diff options
author | Lev Walkin <vlm@lionet.info> | 2004-09-15 11:59:51 +0000 |
---|---|---|
committer | Lev Walkin <vlm@lionet.info> | 2004-09-15 11:59:51 +0000 |
commit | 9c974183f7414934d21da76b504e41af040ab373 (patch) | |
tree | bf30b0e9da113f322edb0a8a99f145428fb80dd3 /libasn1parser/asn1p_l.c | |
parent | 5498f2d63a5b7e27b0ca86a1fd61db113c69f948 (diff) |
DEFAULT type support
Diffstat (limited to 'libasn1parser/asn1p_l.c')
-rw-r--r-- | libasn1parser/asn1p_l.c | 2906 |
1 files changed, 1440 insertions, 1466 deletions
diff --git a/libasn1parser/asn1p_l.c b/libasn1parser/asn1p_l.c index f40f7a38..2d0c3075 100644 --- a/libasn1parser/asn1p_l.c +++ b/libasn1parser/asn1p_l.c @@ -312,154 +312,152 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 132 -#define YY_END_OF_BUFFER 133 -static yyconst short int yy_acclist[1291] = +#define YY_NUM_RULES 131 +#define YY_END_OF_BUFFER 132 +static yyconst short int yy_acclist[1266] = { 0, - 133, 131, 132, 125, 131, 132, 125, 132, 124, 131, - 132, 15, 131, 132, 124, 131, 132, 131, 132, 124, - 131, 132, 131, 132, 124, 131, 132, 131, 132, 29, - 131, 132, 28, 131, 132, 124, 131, 132, 131, 132, - 119, 120, 131, 132, 119, 120, 131, 132, 119, 120, - 131, 132, 119, 120, 131, 132, 119, 120, 131, 132, - 119, 120, 131, 132, 119, 120, 131, 132, 119, 120, - 131, 132, 119, 120, 131, 132, 119, 120, 131, 132, - 119, 120, 131, 132, 119, 120, 131, 132, 119, 120, - 131, 132, 119, 120, 131, 132, 119, 120, 131, 132, - - 119, 120, 131, 132, 119, 120, 131, 132, 119, 120, - 131, 132, 119, 120, 131, 132, 124, 131, 132, 130, - 131, 132, 118, 131, 132, 124, 130, 131, 132, 5, - 131, 132, 2, 132, 2, 131, 132, 4, 131, 132, - 7, 9, 131, 132, 7, 132, 9, 131, 132, 9, - 131, 132, 17, 131, 132, 17, 132, 18, 131, 132, - 12, 131, 132, 12, 132, 14, 131, 132, 14, 131, - 132, 10, 131, 132, 11, 131, 132, 21, 23, 131, - 132, 23, 131, 132, 24, 132, 21, 22, 23, 131, - 132, 21, 22, 23, 131, 132, 127, 131, 132, 128, - - 131, 132, 128, 132, 131, 132, 129, 131, 132, 125, - 15, 15, 116, 117, 1, 27, 123, 6, 28, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 42, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 120, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 120, - 119, 120, 119, 120, 87, 119, 120, 119, 120, 120, - 119, 120, 119, 120, 119, 120, 119, 120, 120, 119, - - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 120, 119, 120, - 119, 120, 120, 120, 119, 120, 118, 5, 3, 8, - 17, 16, 12, 21, 21, 22, 21, 22, 127, 128, - 126, 116, 117, 27, 122, 121, 119, 120, 34, 119, - 120, 35, 119, 120, 119, 120, 119, 120, 119, 120, - 39, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 56, 119, 120, 119, 120, 119, 120, - 119, 120, 119, 120, 119, 120, 119, 120, 120, 120, - - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 119, 120, 119, 120, 79, 119, 120, 80, 119, 120, - 119, 120, 120, 119, 120, 119, 120, 119, 120, 120, - 119, 120, 90, 119, 120, 119, 120, 119, 120, 119, - 120, 120, 119, 120, 119, 120, 119, 120, 98, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 120, 119, 120, 119, 120, - 119, 120, 120, 120, 120, 119, 120, 30, 13, 21, - 22, 20, 21, 22, 26, 25, 119, 120, 119, 120, - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 119, 120, 64, 119, 120, 120, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 82, 119, 120, 120, 119, - 120, 119, 120, 119, 120, 120, 119, 120, 119, 120, - 119, 120, 119, 120, 120, 95, 119, 120, 119, 120, - 119, 120, 99, 119, 120, 119, 120, 119, 120, 119, - 120, 103, 119, 120, 105, 119, 120, 119, 120, 120, - - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 120, 120, 120, 115, 119, 120, 21, 22, 119, 120, - 119, 120, 119, 120, 119, 120, 38, 119, 120, 120, - 119, 120, 119, 120, 119, 120, 45, 119, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 63, 119, 120, 120, 120, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 119, 120, 119, - 120, 120, 119, 120, 86, 119, 120, 119, 120, 120, - - 119, 120, 119, 120, 119, 120, 119, 120, 120, 119, - 120, 119, 120, 119, 120, 119, 120, 120, 119, 120, - 120, 107, 119, 120, 119, 120, 119, 120, 120, 119, - 120, 120, 120, 120, 31, 21, 22, 32, 119, 120, - 119, 120, 119, 120, 119, 120, 120, 119, 120, 119, - 120, 44, 119, 120, 119, 120, 119, 120, 119, 120, - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 119, 120, 119, 120, 58, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 120, 120, 120, 119, 120, - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 120, 84, 119, 120, 119, 120, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 120, 119, 120, 119, 120, - 100, 119, 120, 101, 119, 120, 120, 119, 120, 120, - 108, 119, 120, 119, 120, 120, 120, 120, 120, 120, - 21, 22, 119, 120, 119, 120, 119, 120, 120, 41, - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 50, 119, 120, 51, 119, 120, 119, 120, 119, 120, - 54, 119, 120, 119, 120, 119, 120, 119, 120, 60, - 119, 120, 119, 120, 119, 120, 120, 120, 120, 119, - - 120, 119, 120, 71, 119, 120, 72, 119, 120, 119, - 120, 119, 120, 119, 120, 76, 119, 120, 119, 120, - 119, 120, 119, 120, 120, 119, 120, 120, 89, 119, - 120, 119, 120, 92, 119, 120, 94, 119, 120, 120, - 119, 120, 119, 120, 120, 119, 120, 120, 119, 120, - 111, 120, 120, 120, 120, 120, 21, 22, 119, 120, - 119, 120, 119, 120, 120, 119, 120, 119, 120, 119, - 120, 119, 120, 119, 120, 53, 119, 120, 119, 120, - 119, 120, 59, 119, 120, 119, 120, 62, 119, 120, - 120, 120, 120, 120, 119, 120, 70, 119, 120, 73, - - 119, 120, 74, 119, 120, 119, 120, 119, 120, 120, - 119, 120, 120, 88, 119, 120, 120, 119, 120, 120, - 119, 120, 97, 119, 120, 120, 119, 120, 120, 119, - 120, 120, 120, 120, 120, 21, 22, 119, 120, 119, - 120, 37, 119, 120, 40, 120, 43, 119, 120, 46, - 119, 120, 119, 120, 119, 120, 119, 120, 119, 120, - 119, 120, 119, 120, 120, 120, 120, 68, 120, 119, - 120, 119, 120, 119, 120, 120, 119, 120, 120, 120, - 119, 120, 120, 119, 120, 102, 120, 119, 120, 120, - 109, 119, 120, 120, 120, 120, 120, 21, 119, 120, - - 119, 120, 47, 119, 120, 48, 119, 120, 49, 119, - 120, 119, 120, 119, 120, 57, 119, 120, 119, 120, - 120, 120, 120, 69, 119, 120, 119, 120, 119, 120, - 120, 119, 120, 120, 120, 119, 120, 120, 119, 120, - 119, 120, 120, 112, 120, 120, 120, 120, 21, 119, - 120, 36, 119, 120, 52, 119, 120, 119, 120, 119, - 120, 120, 120, 120, 119, 120, 119, 120, 120, 119, - 120, 120, 120, 119, 120, 120, 119, 120, 119, 120, - 120, 120, 120, 120, 30, 31, 21, 119, 120, 119, - 120, 119, 120, 120, 120, 120, 75, 119, 120, 77, - - 119, 120, 78, 120, 119, 120, 120, 120, 119, 120, - 120, 96, 119, 120, 119, 120, 120, 120, 120, 120, - 21, 119, 120, 119, 120, 61, 119, 120, 66, 120, - 120, 67, 120, 119, 120, 83, 120, 120, 91, 119, - 120, 120, 119, 120, 104, 120, 120, 120, 114, 120, - 21, 119, 120, 119, 120, 120, 81, 119, 120, 120, - 120, 119, 120, 120, 113, 120, 21, 33, 119, 120, - 119, 120, 65, 120, 120, 93, 120, 106, 119, 120, - 110, 120, 21, 55, 119, 120, 85, 120, 19, 21 + 132, 130, 131, 124, 130, 131, 124, 131, 123, 130, + 131, 15, 130, 131, 123, 130, 131, 130, 131, 123, + 130, 131, 130, 131, 123, 130, 131, 130, 131, 29, + 130, 131, 28, 130, 131, 123, 130, 131, 130, 131, + 118, 119, 130, 131, 118, 119, 130, 131, 118, 119, + 130, 131, 118, 119, 130, 131, 118, 119, 130, 131, + 118, 119, 130, 131, 118, 119, 130, 131, 118, 119, + 130, 131, 118, 119, 130, 131, 118, 119, 130, 131, + 118, 119, 130, 131, 118, 119, 130, 131, 118, 119, + 130, 131, 118, 119, 130, 131, 118, 119, 130, 131, + + 118, 119, 130, 131, 118, 119, 130, 131, 118, 119, + 130, 131, 118, 119, 130, 131, 123, 130, 131, 129, + 130, 131, 117, 130, 131, 123, 129, 130, 131, 5, + 130, 131, 2, 131, 2, 130, 131, 4, 130, 131, + 7, 9, 130, 131, 7, 131, 9, 130, 131, 9, + 130, 131, 17, 130, 131, 17, 131, 18, 130, 131, + 12, 130, 131, 12, 131, 14, 130, 131, 14, 130, + 131, 10, 130, 131, 11, 130, 131, 21, 23, 130, + 131, 23, 130, 131, 24, 131, 21, 22, 23, 130, + 131, 21, 22, 23, 130, 131, 126, 130, 131, 127, + + 130, 131, 127, 131, 130, 131, 128, 130, 131, 124, + 15, 15, 115, 116, 1, 27, 122, 6, 28, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 119, 118, 119, 118, 119, 118, 119, 118, 119, + 41, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 119, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 119, + 118, 119, 118, 119, 86, 118, 119, 118, 119, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 119, 118, + + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 119, 118, 119, + 118, 119, 119, 119, 118, 119, 117, 5, 3, 8, + 17, 16, 12, 21, 21, 22, 21, 22, 126, 127, + 125, 115, 116, 27, 121, 120, 118, 119, 33, 118, + 119, 34, 118, 119, 118, 119, 118, 119, 118, 119, + 38, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 55, 118, 119, 118, 119, 118, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 119, 119, + + 118, 119, 118, 119, 118, 119, 118, 119, 118, 119, + 118, 119, 118, 119, 78, 118, 119, 79, 118, 119, + 118, 119, 119, 118, 119, 118, 119, 118, 119, 119, + 118, 119, 89, 118, 119, 118, 119, 118, 119, 118, + 119, 119, 118, 119, 118, 119, 118, 119, 97, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 119, 118, 119, 118, 119, + 118, 119, 119, 119, 119, 118, 119, 30, 13, 21, + 22, 20, 21, 22, 26, 25, 118, 119, 118, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 118, 119, + + 118, 119, 118, 119, 118, 119, 118, 119, 118, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 118, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 118, 119, + 63, 118, 119, 119, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 81, 118, 119, 119, 118, 119, 118, + 119, 118, 119, 119, 118, 119, 118, 119, 118, 119, + 118, 119, 119, 94, 118, 119, 118, 119, 118, 119, + 98, 118, 119, 118, 119, 118, 119, 118, 119, 102, + 118, 119, 104, 118, 119, 118, 119, 119, 118, 119, + + 118, 119, 118, 119, 118, 119, 118, 119, 119, 119, + 119, 114, 118, 119, 21, 22, 118, 119, 118, 119, + 118, 119, 37, 118, 119, 119, 118, 119, 118, 119, + 118, 119, 44, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 62, 118, 119, 119, 119, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 118, 119, 119, 118, 119, + 85, 118, 119, 118, 119, 119, 118, 119, 118, 119, + + 118, 119, 118, 119, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 119, 118, 119, 119, 106, 118, 119, + 118, 119, 118, 119, 119, 118, 119, 119, 119, 119, + 31, 21, 22, 32, 118, 119, 118, 119, 118, 119, + 119, 118, 119, 118, 119, 43, 118, 119, 118, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 118, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 57, 118, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 119, + 119, 119, 118, 119, 118, 119, 118, 119, 118, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 118, 119, + + 118, 119, 118, 119, 119, 83, 118, 119, 118, 119, + 119, 118, 119, 118, 119, 118, 119, 118, 119, 119, + 118, 119, 118, 119, 99, 118, 119, 100, 118, 119, + 119, 118, 119, 119, 107, 118, 119, 118, 119, 119, + 119, 119, 119, 119, 21, 22, 118, 119, 118, 119, + 119, 40, 118, 119, 118, 119, 118, 119, 118, 119, + 118, 119, 49, 118, 119, 50, 118, 119, 118, 119, + 118, 119, 53, 118, 119, 118, 119, 118, 119, 118, + 119, 59, 118, 119, 118, 119, 118, 119, 119, 119, + 119, 118, 119, 118, 119, 70, 118, 119, 71, 118, + + 119, 118, 119, 118, 119, 118, 119, 75, 118, 119, + 118, 119, 118, 119, 118, 119, 119, 118, 119, 119, + 88, 118, 119, 118, 119, 91, 118, 119, 93, 118, + 119, 119, 118, 119, 118, 119, 119, 118, 119, 119, + 118, 119, 110, 119, 119, 119, 119, 119, 21, 22, + 118, 119, 118, 119, 119, 118, 119, 118, 119, 118, + 119, 118, 119, 118, 119, 52, 118, 119, 118, 119, + 118, 119, 58, 118, 119, 118, 119, 61, 118, 119, + 119, 119, 119, 119, 118, 119, 69, 118, 119, 72, + 118, 119, 73, 118, 119, 118, 119, 118, 119, 119, + + 118, 119, 119, 87, 118, 119, 119, 118, 119, 119, + 118, 119, 96, 118, 119, 119, 118, 119, 119, 118, + 119, 119, 119, 119, 119, 21, 22, 118, 119, 36, + 118, 119, 39, 119, 42, 118, 119, 45, 118, 119, + 118, 119, 118, 119, 118, 119, 118, 119, 118, 119, + 118, 119, 119, 119, 119, 67, 119, 118, 119, 118, + 119, 118, 119, 119, 118, 119, 119, 119, 118, 119, + 119, 118, 119, 101, 119, 118, 119, 119, 108, 118, + 119, 119, 119, 119, 119, 21, 118, 119, 46, 118, + 119, 47, 118, 119, 48, 118, 119, 118, 119, 118, + + 119, 56, 118, 119, 118, 119, 119, 119, 119, 68, + 118, 119, 118, 119, 118, 119, 119, 118, 119, 119, + 119, 118, 119, 119, 118, 119, 118, 119, 119, 111, + 119, 119, 119, 119, 21, 35, 118, 119, 51, 118, + 119, 118, 119, 118, 119, 119, 119, 119, 118, 119, + 118, 119, 119, 118, 119, 119, 119, 118, 119, 119, + 118, 119, 118, 119, 119, 119, 119, 119, 30, 31, + 21, 118, 119, 118, 119, 119, 119, 119, 74, 118, + 119, 76, 118, 119, 77, 119, 118, 119, 119, 119, + 118, 119, 119, 95, 118, 119, 118, 119, 119, 119, + + 119, 119, 21, 118, 119, 60, 118, 119, 65, 119, + 119, 66, 119, 118, 119, 82, 119, 119, 90, 118, + 119, 119, 118, 119, 103, 119, 119, 119, 113, 119, + 21, 118, 119, 119, 80, 118, 119, 119, 119, 118, + 119, 119, 112, 119, 21, 118, 119, 64, 119, 119, + 92, 119, 105, 118, 119, 109, 119, 21, 54, 118, + 119, 84, 119, 19, 21 } ; -static yyconst short int yy_accept[722] = +static yyconst short int yy_accept[710] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 4, 7, 9, 12, @@ -491,56 +489,54 @@ static yyconst short int yy_accept[722] = 479, 479, 480, 482, 485, 485, 486, 487, 489, 491, 493, 495, 497, 499, 501, 503, 505, 507, 509, 511, 513, 515, 517, 519, 521, 523, 525, 527, 529, 531, - 533, 536, 537, 538, 540, 542, 544, 546, 548, 550, - 552, 554, 556, 559, 560, 562, 564, 566, 567, 569, + 534, 535, 536, 538, 540, 542, 544, 546, 548, 550, + 552, 554, 557, 558, 560, 562, 564, 565, 567, 569, - 571, 573, 575, 576, 579, 581, 583, 586, 588, 590, - 592, 595, 598, 600, 601, 603, 605, 607, 609, 611, - 612, 613, 614, 617, 617, 617, 617, 617, 619, 621, - 623, 625, 627, 630, 631, 633, 635, 637, 640, 642, + 571, 573, 574, 577, 579, 581, 584, 586, 588, 590, + 593, 596, 598, 599, 601, 603, 605, 607, 609, 610, + 611, 612, 615, 615, 615, 615, 615, 617, 619, 621, + 623, 626, 627, 629, 631, 633, 636, 638, 640, 642, 644, 646, 648, 650, 652, 654, 656, 658, 660, 662, - 664, 666, 669, 670, 671, 672, 674, 676, 678, 680, - 682, 684, 686, 688, 690, 692, 693, 695, 698, 700, - 701, 703, 705, 707, 709, 710, 712, 714, 716, 718, - 719, 721, 722, 725, 727, 729, 730, 732, 733, 734, - 735, 736, 736, 736, 736, 738, 741, 743, 745, 747, - - 748, 750, 752, 755, 757, 759, 761, 763, 765, 767, - 769, 771, 773, 775, 778, 780, 782, 784, 786, 787, - 788, 789, 791, 793, 795, 797, 799, 801, 803, 805, - 807, 809, 811, 812, 815, 817, 818, 820, 822, 824, - 826, 827, 829, 831, 834, 837, 838, 840, 841, 844, - 846, 847, 848, 849, 850, 851, 851, 851, 851, 853, - 855, 857, 859, 860, 863, 865, 867, 869, 871, 874, - 877, 879, 881, 884, 886, 888, 890, 893, 895, 897, - 898, 899, 900, 902, 904, 907, 910, 912, 914, 916, - 919, 921, 923, 925, 926, 928, 929, 932, 934, 937, - - 940, 941, 943, 945, 946, 948, 949, 951, 953, 954, - 955, 956, 957, 957, 957, 957, 959, 961, 963, 965, - 966, 968, 970, 972, 974, 976, 979, 981, 983, 986, - 988, 991, 992, 993, 994, 995, 997, 1000, 1003, 1006, - 1008, 1010, 1011, 1013, 1014, 1017, 1018, 1020, 1021, 1023, - 1026, 1027, 1029, 1030, 1032, 1033, 1034, 1035, 1036, 1036, - 1036, 1036, 1038, 1040, 1042, 1045, 1047, 1050, 1053, 1055, - 1057, 1059, 1061, 1063, 1065, 1066, 1067, 1068, 1070, 1072, - 1074, 1076, 1077, 1079, 1080, 1081, 1083, 1084, 1086, 1088, - 1090, 1091, 1094, 1095, 1096, 1097, 1098, 1098, 1098, 1098, - - 1099, 1101, 1103, 1106, 1109, 1112, 1114, 1116, 1119, 1121, - 1122, 1123, 1124, 1127, 1129, 1131, 1132, 1134, 1135, 1136, - 1138, 1139, 1141, 1143, 1144, 1146, 1147, 1148, 1149, 1149, - 1149, 1149, 1150, 1152, 1155, 1158, 1160, 1162, 1163, 1164, - 1165, 1167, 1169, 1170, 1172, 1173, 1174, 1176, 1177, 1179, - 1181, 1182, 1183, 1184, 1185, 1185, 1187, 1187, 1188, 1190, - 1192, 1194, 1195, 1196, 1197, 1200, 1203, 1205, 1207, 1208, - 1209, 1211, 1212, 1215, 1217, 1218, 1219, 1220, 1221, 1221, - 1222, 1224, 1226, 1229, 1231, 1232, 1234, 1236, 1238, 1239, - 1242, 1243, 1245, 1247, 1248, 1249, 1251, 1251, 1252, 1254, - - 1256, 1257, 1260, 1261, 1262, 1264, 1265, 1267, 1268, 1271, - 1273, 1275, 1276, 1278, 1281, 1283, 1284, 1287, 1289, 1291, - 1291 + 665, 666, 667, 668, 670, 672, 674, 676, 678, 680, + 682, 684, 686, 688, 689, 691, 694, 696, 697, 699, + 701, 703, 705, 706, 708, 710, 712, 714, 715, 717, + 718, 721, 723, 725, 726, 728, 729, 730, 731, 732, + 732, 732, 732, 734, 737, 739, 741, 742, 744, 746, + + 749, 751, 753, 755, 757, 759, 761, 763, 765, 767, + 769, 772, 774, 776, 778, 780, 781, 782, 783, 785, + 787, 789, 791, 793, 795, 797, 799, 801, 803, 805, + 806, 809, 811, 812, 814, 816, 818, 820, 821, 823, + 825, 828, 831, 832, 834, 835, 838, 840, 841, 842, + 843, 844, 845, 845, 845, 845, 847, 849, 851, 852, + 855, 857, 859, 861, 863, 866, 869, 871, 873, 876, + 878, 880, 882, 885, 887, 889, 890, 891, 892, 894, + 896, 899, 902, 904, 906, 908, 911, 913, 915, 917, + 918, 920, 921, 924, 926, 929, 932, 933, 935, 937, + + 938, 940, 941, 943, 945, 946, 947, 948, 949, 949, + 949, 949, 951, 953, 955, 956, 958, 960, 962, 964, + 966, 969, 971, 973, 976, 978, 981, 982, 983, 984, + 985, 987, 990, 993, 996, 998, 1000, 1001, 1003, 1004, + 1007, 1008, 1010, 1011, 1013, 1016, 1017, 1019, 1020, 1022, + 1023, 1024, 1025, 1026, 1026, 1026, 1026, 1028, 1030, 1033, + 1035, 1038, 1041, 1043, 1045, 1047, 1049, 1051, 1053, 1054, + 1055, 1056, 1058, 1060, 1062, 1064, 1065, 1067, 1068, 1069, + 1071, 1072, 1074, 1076, 1078, 1079, 1082, 1083, 1084, 1085, + 1086, 1086, 1086, 1086, 1087, 1089, 1092, 1095, 1098, 1100, + + 1102, 1105, 1107, 1108, 1109, 1110, 1113, 1115, 1117, 1118, + 1120, 1121, 1122, 1124, 1125, 1127, 1129, 1130, 1132, 1133, + 1134, 1135, 1135, 1135, 1135, 1136, 1139, 1142, 1144, 1146, + 1147, 1148, 1149, 1151, 1153, 1154, 1156, 1157, 1158, 1160, + 1161, 1163, 1165, 1166, 1167, 1168, 1169, 1169, 1171, 1171, + 1172, 1174, 1176, 1177, 1178, 1179, 1182, 1185, 1187, 1189, + 1190, 1191, 1193, 1194, 1197, 1199, 1200, 1201, 1202, 1203, + 1203, 1204, 1206, 1209, 1211, 1212, 1214, 1216, 1218, 1219, + 1222, 1223, 1225, 1227, 1228, 1229, 1231, 1231, 1232, 1234, + 1235, 1238, 1239, 1240, 1242, 1243, 1245, 1246, 1248, 1250, + + 1251, 1253, 1256, 1258, 1259, 1262, 1264, 1266, 1266 } ; static yyconst int yy_ec[256] = @@ -587,18 +583,18 @@ static yyconst int yy_meta[79] = 11, 11, 11, 11, 11, 12, 1, 12 } ; -static yyconst short int yy_base[740] = +static yyconst short int yy_base[728] = { 0, 0, 0, 76, 78, 80, 81, 82, 89, 83, 93, 171, 249, 109, 120, 961, 952, 95, 98, 951, 948, - 320, 117, 4484, 118, 933, 100, 4484, 125, 923, 4484, + 320, 117, 4405, 118, 933, 100, 4405, 125, 923, 4405, 385, 176, 194, 120, 239, 267, 435, 163, 293, 441, 191, 259, 463, 471, 484, 500, 508, 270, 521, 553, - 935, 0, 933, 0, 4484, 4484, 926, 4484, 4484, 922, - 922, 0, 0, 924, 0, 0, 902, 4484, 4484, 4484, - 0, 4484, 4484, 598, 675, 0, 148, 151, 182, 4484, + 935, 0, 933, 0, 4405, 4405, 926, 4405, 4405, 922, + 922, 0, 0, 924, 0, 0, 902, 4405, 4405, 4405, + 0, 4405, 4405, 598, 675, 0, 148, 151, 182, 4405, 915, 160, 0, 913, 912, 0, 135, 0, 573, 908, - 4484, 226, 902, 4484, 598, 886, 556, 597, 598, 618, + 4405, 226, 902, 4405, 598, 886, 556, 597, 598, 618, 619, 634, 0, 664, 667, 680, 693, 704, 720, 728, 741, 744, 757, 772, 778, 775, 793, 842, 852, 808, @@ -606,158 +602,156 @@ static yyconst short int yy_base[740] = 902, 910, 840, 913, 926, 937, 950, 835, 966, 972, 983, 989, 1000, 1015, 1016, 1031, 1032, 831, 1047, 1048, 831, 48, 1063, 1095, 1102, 851, 88, 128, 0, 0, - 4484, 4484, 0, 4484, 0, 865, 0, 849, 253, 0, - 264, 4484, 875, 0, 0, 83, 848, 611, 4484, 4484, - 1099, 1100, 1115, 1123, 1126, 1141, 1144, 1147, 1162, 1168, - 1179, 1185, 1196, 1207, 1223, 1229, 1240, 1246, 1257, 1263, - - 1274, 1280, 1291, 1302, 818, 807, 1315, 1323, 1326, 1341, - 1344, 1347, 1371, 1365, 1368, 1386, 815, 1389, 1404, 1410, - 811, 1421, 1432, 1438, 1449, 1460, 802, 1471, 1477, 1488, - 1494, 1509, 1510, 1525, 1536, 1542, 1557, 1563, 809, 1574, - 1585, 1596, 793, 807, 801, 1607, 4484, 1646, 822, 178, - 250, 4484, 109, 820, 802, 4484, 4484, 1631, 1632, 1647, - 1653, 1668, 1669, 1686, 1685, 1701, 1707, 1718, 1729, 1747, - 1744, 1750, 1765, 1768, 1771, 1786, 1792, 1803, 1814, 1829, - 1835, 783, 789, 1846, 1852, 1867, 1868, 1883, 1889, 1904, - 1907, 1915, 1928, 774, 1936, 1939, 1952, 786, 1960, 1976, - - 1975, 1992, 770, 1993, 2008, 2021, 2029, 2032, 2050, 2047, - 2053, 2068, 2071, 768, 2074, 2089, 2095, 2106, 2112, 778, - 768, 775, 2127, 2159, 170, 151, 242, 200, 2144, 2160, - 2168, 2176, 2184, 759, 2192, 2200, 2213, 2221, 2224, 2242, - 2239, 2245, 2260, 2266, 2281, 2282, 2297, 2312, 2318, 2329, - 2335, 2350, 773, 763, 755, 2351, 2371, 2368, 2389, 2388, - 2404, 2410, 2421, 2432, 2443, 759, 2449, 2460, 2466, 738, - 2477, 2488, 2494, 2505, 753, 2518, 2521, 2529, 2542, 737, - 2553, 745, 2559, 2574, 2575, 731, 2590, 725, 721, 727, - 4484, 280, 297, 294, 231, 2596, 2611, 2614, 2622, 728, - - 2637, 2643, 2654, 2660, 2671, 2677, 2688, 2699, 2705, 2722, - 2728, 2739, 2745, 2756, 2762, 2773, 2779, 2795, 724, 731, - 723, 2796, 2811, 2817, 2828, 2834, 2849, 2855, 2866, 2881, - 2887, 2898, 720, 2909, 2915, 747, 2926, 2932, 2943, 2956, - 716, 2964, 2979, 2982, 2985, 707, 3000, 689, 3003, 3006, - 704, 692, 687, 697, 693, 271, 295, 301, 712, 3021, - 3024, 3037, 682, 3045, 3058, 3066, 3069, 3082, 3090, 3093, - 3106, 3117, 3114, 3130, 3138, 3141, 3154, 3162, 3165, 124, - 704, 677, 3178, 3186, 3189, 3202, 3210, 3223, 3231, 3234, - 3251, 3254, 3257, 698, 3272, 681, 3275, 3288, 3296, 3304, - - 673, 3317, 3325, 658, 3338, 680, 3346, 0, 660, 667, - 643, 672, 438, 368, 366, 286, 3349, 3362, 3370, 654, - 3378, 3386, 3399, 3407, 3410, 3425, 3431, 3446, 3428, 3452, - 3463, 639, 633, 630, 634, 3469, 3480, 3486, 3497, 3503, - 3514, 623, 3525, 620, 3531, 619, 3542, 619, 3553, 3559, - 613, 3570, 600, 3576, 603, 604, 623, 594, 300, 466, - 447, 360, 3587, 3598, 3609, 0, 3615, 3626, 3637, 3648, - 3654, 3669, 3672, 3675, 593, 603, 584, 0, 3690, 3698, - 3713, 590, 3714, 579, 591, 3729, 603, 3737, 0, 3745, - 572, 3758, 579, 589, 531, 528, 443, 3797, 454, 568, - - 3782, 3783, 3798, 3799, 3814, 3815, 3830, 3836, 3847, 529, - 533, 527, 3853, 3864, 3875, 520, 3881, 523, 515, 3892, - 512, 3898, 3909, 518, 0, 508, 496, 498, 397, 3941, - 560, 517, 3926, 3927, 3942, 3943, 3958, 489, 507, 484, - 3969, 3975, 483, 3990, 475, 477, 3993, 468, 3996, 4013, - 469, 462, 468, 461, 424, 4484, 4052, 485, 4037, 4048, - 4059, 461, 456, 455, 4065, 4076, 0, 4087, 454, 444, - 4098, 440, 4104, 4115, 438, 434, 429, 432, 732, 441, - 4131, 4128, 4139, 0, 419, 0, 4152, 0, 411, 4155, - 399, 4170, 0, 372, 347, 0, 4209, 330, 4194, 4205, - - 258, 4211, 227, 214, 4222, 177, 0, 180, 4233, 4239, - 0, 138, 0, 4250, 0, 134, 4256, 0, 0, 4484, - 4301, 4313, 4325, 4337, 4349, 4361, 4373, 4384, 4385, 4389, - 4400, 4412, 4424, 4435, 4446, 4457, 4462, 4467, 4472 + 4405, 4405, 0, 4405, 0, 865, 0, 849, 253, 0, + 264, 4405, 875, 0, 0, 83, 848, 611, 4405, 4405, + 1098, 1099, 1114, 1115, 1130, 1138, 1141, 1154, 1162, 1170, + 1178, 1191, 1199, 1202, 1223, 1224, 1239, 1245, 1256, 1262, + + 1273, 1279, 1290, 1301, 818, 807, 1314, 1322, 1325, 1340, + 1343, 1346, 1370, 1364, 1367, 1385, 815, 1388, 1403, 1409, + 811, 1420, 1431, 1437, 1448, 1459, 802, 1470, 1476, 1487, + 1493, 1508, 1509, 1524, 1535, 1541, 1556, 1562, 809, 1573, + 1584, 1595, 793, 807, 801, 1606, 4405, 1645, 822, 178, + 250, 4405, 109, 820, 802, 4405, 4405, 1630, 1641, 1647, + 1662, 1663, 1680, 1679, 1695, 1701, 1712, 1723, 1741, 1738, + 1744, 1759, 1762, 1765, 1780, 1786, 1797, 1808, 1823, 1829, + 783, 789, 1840, 1846, 1861, 1862, 1877, 1883, 1898, 1901, + 1909, 1922, 774, 1930, 1933, 1946, 786, 1954, 1970, 1969, + + 1986, 770, 1987, 2002, 2015, 2023, 2026, 2044, 2041, 2047, + 2062, 2065, 768, 2068, 2083, 2089, 2100, 2106, 778, 768, + 775, 2121, 2153, 170, 151, 242, 200, 2138, 2153, 2159, + 2170, 759, 2176, 2191, 2194, 2202, 2215, 2218, 2226, 2239, + 2247, 2260, 2268, 2276, 2284, 2299, 2305, 2316, 2322, 2337, + 773, 763, 755, 2338, 2358, 2355, 2376, 2375, 2391, 2397, + 2408, 2419, 2430, 759, 2436, 2447, 2453, 738, 2464, 2475, + 2481, 2492, 753, 2505, 2508, 2516, 2529, 737, 2540, 745, + 2546, 2561, 2562, 731, 2577, 725, 721, 727, 4405, 280, + 297, 294, 231, 2583, 2599, 2605, 728, 2616, 2627, 2638, + + 2644, 2655, 2661, 2672, 2683, 2689, 2706, 2712, 2723, 2729, + 2740, 2746, 2757, 2763, 2779, 724, 731, 723, 2780, 2795, + 2801, 2812, 2818, 2833, 2839, 2850, 2865, 2871, 2882, 720, + 2893, 2899, 747, 2910, 2916, 2927, 2940, 716, 2948, 2963, + 2966, 2969, 707, 2984, 689, 2987, 2990, 704, 692, 687, + 697, 693, 271, 295, 301, 712, 3005, 3018, 682, 3021, + 3036, 3042, 3053, 3059, 3070, 3076, 3087, 3098, 3104, 3115, + 3121, 3132, 3143, 3149, 3160, 124, 704, 677, 3166, 3177, + 3188, 3194, 3205, 3211, 3226, 3227, 3242, 3248, 3259, 698, + 3265, 681, 3276, 3287, 3298, 3304, 673, 3319, 3325, 658, + + 3340, 680, 3346, 0, 660, 667, 643, 672, 438, 368, + 366, 286, 3357, 3372, 654, 3378, 3389, 3402, 3410, 3413, + 3428, 3434, 3449, 3431, 3455, 3466, 639, 633, 630, 634, + 3472, 3483, 3489, 3500, 3506, 3517, 623, 3528, 620, 3534, + 619, 3545, 619, 3556, 3562, 613, 3573, 600, 3579, 603, + 604, 623, 594, 300, 466, 447, 360, 3590, 3596, 0, + 3607, 3613, 3629, 3628, 3644, 3645, 3660, 3661, 593, 603, + 584, 0, 3676, 3684, 3699, 590, 3700, 579, 591, 3715, + 603, 3723, 0, 3731, 572, 3744, 579, 589, 531, 528, + 443, 3783, 454, 568, 3768, 3769, 3784, 3785, 3800, 3808, + + 3816, 3824, 529, 533, 527, 3832, 3840, 3848, 520, 3856, + 523, 515, 3864, 512, 3872, 3880, 518, 0, 508, 496, + 498, 397, 3912, 560, 517, 3897, 3898, 3913, 3921, 489, + 507, 484, 3934, 3942, 483, 3950, 475, 477, 3958, 468, + 3971, 3974, 469, 462, 468, 461, 424, 4405, 4018, 485, + 4003, 4004, 461, 456, 455, 4019, 4020, 0, 4035, 454, + 444, 4036, 440, 4051, 4057, 438, 434, 429, 432, 732, + 441, 4068, 4079, 0, 419, 0, 4085, 0, 411, 4100, + 399, 4103, 0, 372, 347, 0, 4147, 330, 4132, 258, + 4143, 227, 214, 4149, 177, 0, 180, 4160, 0, 138, + + 0, 4166, 0, 134, 4177, 0, 0, 4405, 4222, 4234, + 4246, 4258, 4270, 4282, 4294, 4305, 4306, 4310, 4321, 4333, + 4345, 4356, 4367, 4378, 4383, 4388, 4393 } ; -static yyconst short int yy_def[740] = +static yyconst short int yy_def[728] = { 0, - 720, 1, 721, 721, 722, 722, 723, 723, 724, 724, - 725, 725, 726, 726, 720, 720, 720, 720, 720, 727, - 720, 728, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 31, 31, 729, - 720, 730, 720, 731, 720, 720, 720, 720, 720, 720, - 720, 732, 732, 720, 733, 733, 720, 720, 720, 720, - 734, 720, 720, 735, 735, 736, 720, 720, 21, 720, - 720, 720, 727, 727, 720, 737, 720, 738, 728, 728, - 720, 720, 720, 720, 720, 720, 31, 31, 31, 31, - - 31, 31, 739, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 739, 739, 31, - 31, 31, 31, 31, 31, 31, 31, 739, 31, 31, - 31, 31, 739, 31, 31, 31, 31, 739, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 739, 31, 31, - 739, 739, 31, 720, 729, 155, 155, 155, 730, 731, - 720, 720, 732, 720, 733, 720, 734, 75, 75, 736, - 720, 720, 720, 737, 738, 720, 720, 720, 720, 720, + 708, 1, 709, 709, 710, 710, 711, 711, 712, 712, + 713, 713, 714, 714, 708, 708, 708, 708, 708, 715, + 708, 716, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 31, 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, 31, 717, + 708, 718, 708, 719, 708, 708, 708, 708, 708, 708, + 708, 720, 720, 708, 721, 721, 708, 708, 708, 708, + 722, 708, 708, 723, 723, 724, 708, 708, 21, 708, + 708, 708, 715, 715, 708, 725, 708, 726, 716, 716, + 708, 708, 708, 708, 708, 708, 31, 31, 31, 31, + + 31, 31, 727, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 727, 727, 31, + 31, 31, 31, 31, 31, 31, 31, 727, 31, 31, + 31, 31, 727, 31, 31, 31, 31, 727, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 727, 31, 31, + 727, 727, 31, 708, 717, 155, 155, 155, 718, 719, + 708, 708, 720, 708, 721, 708, 722, 75, 75, 724, + 708, 708, 708, 725, 726, 708, 708, 708, 708, 708, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 739, 739, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 739, 31, 31, 31, - 739, 31, 31, 31, 31, 31, 739, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 31, 739, 31, - 31, 31, 739, 739, 739, 31, 720, 720, 155, 155, - 155, 720, 75, 75, 720, 720, 720, 31, 31, 31, + 31, 31, 31, 31, 727, 727, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 727, 31, 31, 31, + 727, 31, 31, 31, 31, 31, 727, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, 727, 31, + 31, 31, 727, 727, 727, 31, 708, 708, 155, 155, + 155, 708, 75, 75, 708, 708, 708, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 739, 739, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 739, 31, 31, 31, 739, 31, 31, + 727, 727, 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 727, 31, 31, 31, 727, 31, 31, 31, - 31, 31, 739, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 739, 31, 31, 31, 31, 31, 739, - 739, 739, 31, 720, 155, 155, 155, 75, 31, 31, - 31, 31, 31, 739, 31, 31, 31, 31, 31, 31, + 31, 727, 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 727, 31, 31, 31, 31, 31, 727, 727, + 727, 31, 708, 155, 155, 155, 75, 31, 31, 31, + 31, 727, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 739, 739, 739, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 739, 31, 31, 31, 739, - 31, 31, 31, 31, 739, 31, 31, 31, 31, 739, - 31, 739, 31, 31, 31, 739, 31, 739, 739, 739, - 720, 155, 155, 155, 75, 31, 31, 31, 31, 739, + 727, 727, 727, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 727, 31, 31, 31, 727, 31, 31, + 31, 31, 727, 31, 31, 31, 31, 727, 31, 727, + 31, 31, 31, 727, 31, 727, 727, 727, 708, 155, + 155, 155, 75, 31, 31, 31, 727, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 31, 739, 739, - 739, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 739, 31, 31, 739, 31, 31, 31, 31, - 739, 31, 31, 31, 31, 739, 31, 739, 31, 31, - 739, 739, 739, 739, 739, 155, 155, 155, 75, 31, - 31, 31, 739, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 31, 31, 739, - 739, 739, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 739, 31, 739, 31, 31, 31, 31, - - 739, 31, 31, 739, 31, 739, 31, 739, 739, 739, - 739, 739, 155, 155, 155, 75, 31, 31, 31, 739, + 31, 31, 31, 31, 31, 727, 727, 727, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, 31, 727, + 31, 31, 727, 31, 31, 31, 31, 727, 31, 31, + 31, 31, 727, 31, 727, 31, 31, 727, 727, 727, + 727, 727, 155, 155, 155, 75, 31, 31, 727, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 739, 739, 739, 739, 31, 31, 31, 31, 31, - 31, 739, 31, 739, 31, 739, 31, 739, 31, 31, - 739, 31, 739, 31, 739, 739, 739, 739, 155, 155, - 155, 75, 31, 31, 31, 739, 31, 31, 31, 31, - 31, 31, 31, 31, 739, 739, 739, 739, 31, 31, - 31, 739, 31, 739, 739, 31, 739, 31, 739, 31, - 739, 31, 739, 739, 739, 739, 155, 720, 155, 734, - - 31, 31, 31, 31, 31, 31, 31, 31, 31, 739, - 739, 739, 31, 31, 31, 739, 31, 739, 739, 31, - 739, 31, 31, 739, 739, 739, 739, 739, 155, 720, - 155, 734, 31, 31, 31, 31, 31, 739, 739, 739, - 31, 31, 739, 31, 739, 739, 31, 739, 31, 31, - 739, 739, 739, 739, 155, 720, 720, 734, 31, 31, - 31, 739, 739, 739, 31, 31, 739, 31, 739, 739, - 31, 739, 31, 31, 739, 739, 739, 739, 155, 734, - 31, 31, 31, 739, 739, 739, 31, 739, 739, 31, - 739, 31, 739, 739, 739, 739, 720, 734, 31, 31, - - 739, 31, 739, 739, 31, 739, 739, 734, 31, 31, - 739, 739, 739, 31, 739, 734, 31, 739, 734, 0, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720 + 31, 31, 31, 31, 31, 727, 727, 727, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, 31, 727, + 31, 727, 31, 31, 31, 31, 727, 31, 31, 727, + + 31, 727, 31, 727, 727, 727, 727, 727, 155, 155, + 155, 75, 31, 31, 727, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 727, 727, 727, 727, + 31, 31, 31, 31, 31, 31, 727, 31, 727, 31, + 727, 31, 727, 31, 31, 727, 31, 727, 31, 727, + 727, 727, 727, 155, 155, 155, 75, 31, 31, 727, + 31, 31, 31, 31, 31, 31, 31, 31, 727, 727, + 727, 727, 31, 31, 31, 727, 31, 727, 727, 31, + 727, 31, 727, 31, 727, 31, 727, 727, 727, 727, + 155, 708, 155, 722, 31, 31, 31, 31, 31, 31, + + 31, 31, 727, 727, 727, 31, 31, 31, 727, 31, + 727, 727, 31, 727, 31, 31, 727, 727, 727, 727, + 727, 155, 708, 155, 722, 31, 31, 31, 31, 727, + 727, 727, 31, 31, 727, 31, 727, 727, 31, 727, + 31, 31, 727, 727, 727, 727, 155, 708, 708, 722, + 31, 31, 727, 727, 727, 31, 31, 727, 31, 727, + 727, 31, 727, 31, 31, 727, 727, 727, 727, 155, + 722, 31, 31, 727, 727, 727, 31, 727, 727, 31, + 727, 31, 727, 727, 727, 727, 708, 722, 31, 727, + 31, 727, 727, 31, 727, 727, 722, 31, 727, 727, + + 727, 31, 727, 722, 31, 727, 722, 0, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708 } ; -static yyconst short int yy_nxt[4563] = +static yyconst short int yy_nxt[4484] = { 0, 16, 17, 18, 17, 19, 20, 21, 22, 23, 16, 24, 25, 26, 27, 28, 28, 28, 28, 28, 28, @@ -774,87 +768,87 @@ static yyconst short int yy_nxt[4563] = 77, 78, 77, 67, 257, 79, 68, 245, 89, 89, 89, 77, 78, 77, 81, 81, 79, 156, 91, 250, 89, 89, 92, 92, 92, 92, 92, 92, 95, 95, - 95, 95, 95, 95, 95, 97, 168, 328, 112, 171, + 95, 95, 95, 95, 95, 97, 168, 327, 112, 171, 171, 171, 171, 171, 171, 97, 85, 97, 69, 97, - 70, 82, 82, 82, 97, 251, 532, 156, 69, 719, + 70, 82, 82, 82, 97, 251, 527, 156, 69, 707, 70, 71, 72, 73, 72, 71, 71, 71, 71, 71, - 71, 71, 71, 71, 30, 533, 80, 87, 97, 720, - 156, 71, 71, 71, 71, 30, 393, 80, 97, 75, + 71, 71, 71, 71, 30, 528, 80, 87, 97, 708, + 156, 71, 71, 71, 71, 30, 391, 80, 97, 75, - 97, 97, 97, 720, 104, 392, 718, 97, 105, 156, - 326, 97, 106, 97, 107, 97, 97, 156, 716, 97, - 97, 71, 71, 71, 108, 109, 97, 395, 97, 110, - 97, 97, 111, 97, 720, 127, 715, 168, 97, 178, + 97, 97, 97, 708, 104, 390, 706, 97, 105, 156, + 325, 97, 106, 97, 107, 97, 97, 156, 704, 97, + 97, 71, 71, 71, 108, 109, 97, 393, 97, 110, + 97, 97, 111, 97, 708, 127, 703, 168, 97, 178, 178, 178, 178, 178, 178, 178, 72, 71, 72, 71, 72, 73, 72, 71, 71, 71, 71, 71, 71, 71, - 71, 71, 128, 459, 97, 171, 171, 171, 168, 71, - 71, 71, 71, 713, 97, 113, 114, 75, 97, 253, - 254, 156, 327, 97, 129, 130, 115, 394, 131, 156, - 168, 116, 97, 712, 97, 97, 97, 513, 132, 71, + 71, 71, 128, 456, 97, 171, 171, 171, 168, 71, + 71, 71, 71, 701, 97, 113, 114, 75, 97, 253, + 254, 156, 326, 97, 129, 130, 115, 392, 131, 156, + 168, 116, 97, 700, 97, 97, 97, 509, 132, 71, 71, 71, 97, 97, 97, 97, 97, 97, 117, 97, - 156, 97, 456, 133, 97, 711, 562, 120, 97, 156, - 121, 457, 458, 168, 72, 71, 72, 81, 97, 122, - 123, 152, 97, 156, 156, 124, 156, 97, 514, 156, - 156, 85, 515, 597, 86, 86, 86, 86, 86, 86, + 156, 97, 453, 133, 97, 699, 557, 120, 97, 156, + 121, 454, 455, 168, 72, 71, 72, 81, 97, 122, + 123, 152, 97, 156, 156, 124, 156, 97, 510, 156, + 156, 85, 511, 591, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, - 600, 708, 87, 88, 88, 88, 88, 88, 88, 88, + 594, 697, 87, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, - 88, 88, 88, 88, 88, 97, 560, 168, 97, 97, + 88, 88, 88, 88, 88, 97, 555, 168, 97, 97, - 97, 97, 97, 97, 97, 156, 707, 156, 561, 97, + 97, 97, 97, 97, 97, 156, 696, 156, 556, 97, 98, 97, 97, 97, 97, 97, 97, 97, 97, 97, 99, 97, 100, 97, 101, 97, 97, 97, 97, 102, - 97, 97, 97, 97, 97, 655, 156, 706, 103, 103, + 97, 97, 97, 97, 97, 647, 156, 695, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, - 97, 679, 559, 156, 704, 125, 97, 598, 598, 598, - 97, 599, 97, 126, 97, 629, 97, 156, 97, 97, - 97, 703, 156, 701, 698, 97, 156, 134, 97, 631, - 135, 696, 118, 156, 695, 694, 97, 693, 136, 139, - - 97, 691, 97, 119, 137, 156, 97, 97, 97, 97, - 97, 689, 140, 688, 686, 97, 141, 685, 144, 97, - 684, 97, 680, 97, 145, 97, 678, 142, 97, 677, - 676, 138, 143, 97, 675, 97, 672, 97, 670, 97, - 669, 146, 667, 97, 97, 149, 97, 97, 147, 664, - 663, 150, 97, 153, 662, 658, 97, 148, 97, 654, - 97, 657, 657, 657, 653, 97, 154, 154, 154, 154, - 154, 154, 154, 151, 89, 89, 89, 155, 652, 651, - 176, 97, 648, 646, 645, 643, 89, 89, 640, 639, - 638, 97, 157, 97, 632, 97, 628, 158, 167, 156, - - 97, 627, 167, 167, 167, 167, 167, 167, 167, 167, + 97, 670, 554, 156, 693, 125, 97, 592, 592, 592, + 97, 593, 97, 126, 97, 622, 97, 156, 97, 97, + 97, 692, 156, 690, 688, 97, 156, 134, 97, 624, + 135, 686, 118, 156, 685, 684, 97, 683, 136, 139, + + 97, 681, 97, 119, 137, 156, 97, 97, 97, 97, + 97, 679, 140, 678, 676, 97, 141, 675, 144, 97, + 674, 97, 671, 97, 145, 97, 669, 142, 97, 668, + 667, 138, 143, 97, 666, 97, 663, 97, 661, 97, + 660, 146, 658, 97, 97, 149, 97, 97, 147, 655, + 654, 150, 97, 153, 653, 650, 97, 148, 97, 646, + 97, 649, 649, 649, 645, 97, 154, 154, 154, 154, + 154, 154, 154, 151, 89, 89, 89, 155, 644, 643, + 176, 97, 640, 638, 637, 635, 89, 89, 632, 631, + 630, 97, 157, 97, 625, 97, 621, 158, 167, 156, + + 97, 620, 167, 167, 167, 167, 167, 167, 167, 167, 167, 95, 95, 95, 95, 95, 95, 95, 167, 167, 167, 167, 97, 97, 178, 178, 178, 178, 178, 178, - 178, 626, 97, 182, 97, 97, 97, 97, 625, 181, - 624, 97, 97, 97, 97, 621, 619, 618, 167, 167, - 167, 616, 612, 97, 97, 97, 97, 97, 184, 97, - 611, 610, 97, 97, 596, 595, 183, 594, 593, 97, - 591, 97, 589, 97, 167, 167, 587, 185, 97, 167, - 167, 167, 167, 167, 167, 167, 167, 167, 585, 97, - 584, 582, 97, 578, 186, 167, 167, 167, 167, 97, - - 577, 97, 97, 97, 97, 97, 97, 576, 97, 575, - 187, 97, 169, 566, 558, 97, 557, 97, 97, 188, - 556, 555, 553, 551, 97, 167, 167, 167, 97, 97, - 97, 189, 97, 697, 697, 697, 548, 97, 546, 97, - 544, 97, 535, 97, 190, 97, 534, 520, 97, 516, - 512, 167, 192, 97, 511, 97, 510, 97, 191, 97, - 509, 508, 506, 97, 97, 97, 97, 97, 504, 97, - 501, 156, 97, 195, 496, 494, 97, 193, 194, 97, - 97, 97, 196, 97, 482, 97, 481, 480, 97, 463, - 455, 454, 97, 453, 97, 451, 97, 97, 197, 198, - - 97, 97, 448, 97, 200, 446, 441, 97, 436, 97, + 178, 619, 97, 182, 97, 97, 97, 97, 618, 181, + 617, 97, 97, 97, 97, 614, 612, 611, 167, 167, + 167, 609, 605, 97, 97, 97, 97, 97, 184, 97, + 604, 603, 97, 97, 590, 589, 183, 588, 587, 97, + 585, 97, 583, 97, 167, 167, 581, 185, 97, 167, + 167, 167, 167, 167, 167, 167, 167, 167, 579, 97, + 578, 576, 97, 572, 186, 167, 167, 167, 167, 97, + + 571, 97, 97, 97, 97, 97, 97, 570, 97, 569, + 187, 97, 169, 560, 553, 97, 552, 97, 97, 188, + 551, 550, 548, 546, 97, 167, 167, 167, 97, 97, + 97, 189, 97, 687, 687, 687, 543, 97, 541, 97, + 539, 97, 530, 97, 190, 97, 529, 515, 97, 512, + 508, 167, 192, 97, 507, 97, 506, 97, 191, 97, + 505, 504, 502, 97, 97, 97, 97, 97, 500, 97, + 497, 156, 97, 195, 492, 490, 97, 193, 194, 97, + 97, 97, 196, 97, 478, 97, 477, 476, 97, 459, + 452, 451, 97, 450, 97, 448, 97, 97, 197, 198, + + 97, 97, 445, 97, 200, 443, 438, 97, 433, 97, 203, 97, 97, 97, 97, 97, 199, 201, 97, 97, - 433, 202, 97, 421, 420, 207, 419, 400, 97, 390, - 97, 204, 97, 97, 389, 388, 97, 97, 382, 208, - 375, 370, 366, 97, 97, 97, 97, 97, 97, 354, - 97, 353, 97, 172, 97, 97, 97, 168, 209, 97, - 210, 325, 322, 97, 321, 320, 314, 303, 298, 97, - 97, 97, 294, 97, 283, 282, 211, 212, 97, 257, + 430, 202, 97, 418, 417, 207, 416, 397, 97, 388, + 97, 204, 97, 97, 387, 386, 97, 97, 380, 208, + 373, 368, 364, 97, 97, 97, 97, 97, 97, 352, + 97, 351, 97, 172, 97, 97, 97, 168, 209, 97, + 210, 324, 321, 97, 320, 319, 313, 302, 297, 97, + 97, 97, 293, 97, 282, 281, 211, 212, 97, 257, 97, 97, 97, 213, 97, 255, 168, 97, 252, 97, 156, 97, 243, 97, 239, 97, 227, 97, 97, 215, @@ -864,406 +858,397 @@ static yyconst short int yy_nxt[4563] = 97, 94, 219, 97, 162, 97, 161, 97, 97, 97, 81, 97, 81, 96, 93, 97, 97, 97, 97, 97, 97, 97, 97, 220, 97, 84, 222, 97, 81, 81, - 720, 97, 97, 97, 720, 97, 720, 720, 720, 720, - 97, 223, 97, 720, 97, 97, 97, 720, 225, 720, - 720, 224, 226, 720, 720, 97, 720, 97, 720, 97, - 228, 97, 720, 720, 97, 720, 720, 97, 720, 720, - - 720, 229, 720, 97, 720, 97, 720, 97, 97, 97, - 97, 97, 230, 720, 97, 231, 97, 720, 97, 720, - 97, 720, 97, 720, 97, 97, 97, 97, 97, 235, - 233, 720, 232, 97, 720, 97, 720, 234, 720, 97, - 97, 97, 720, 720, 97, 720, 236, 720, 720, 720, - 97, 97, 97, 97, 97, 97, 97, 97, 720, 97, - 97, 720, 720, 720, 720, 720, 97, 97, 97, 97, - 97, 238, 97, 97, 241, 237, 97, 242, 720, 240, - 720, 720, 97, 97, 97, 97, 97, 97, 97, 720, - 720, 97, 97, 720, 720, 720, 720, 720, 97, 720, - - 97, 720, 97, 248, 248, 248, 246, 97, 154, 154, - 154, 154, 154, 154, 154, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 97, 97, 720, 258, 720, 720, - 720, 720, 720, 720, 97, 97, 97, 97, 97, 97, - 97, 249, 259, 97, 97, 720, 247, 720, 97, 720, - 97, 97, 97, 720, 97, 720, 720, 720, 260, 97, - 97, 97, 97, 97, 261, 97, 97, 97, 720, 97, - 97, 720, 97, 262, 720, 720, 97, 720, 97, 97, - 97, 97, 97, 97, 97, 97, 97, 97, 97, 263, - 720, 97, 720, 97, 720, 720, 720, 264, 720, 97, - - 720, 97, 720, 97, 97, 97, 97, 97, 720, 265, - 97, 266, 97, 720, 97, 720, 97, 720, 97, 720, - 97, 97, 97, 97, 97, 720, 720, 267, 720, 97, - 720, 97, 97, 97, 720, 268, 720, 720, 720, 720, - 97, 720, 97, 720, 97, 720, 97, 271, 97, 269, - 270, 97, 720, 720, 97, 272, 720, 273, 97, 720, - 97, 720, 97, 720, 97, 97, 97, 97, 97, 720, - 720, 97, 720, 97, 720, 97, 720, 97, 274, 97, - 720, 97, 97, 97, 97, 97, 720, 720, 97, 720, - 97, 276, 97, 275, 97, 720, 97, 720, 97, 97, - - 97, 97, 97, 720, 720, 97, 720, 97, 279, 277, - 720, 97, 278, 97, 720, 97, 97, 97, 97, 97, - 720, 720, 720, 720, 97, 720, 97, 97, 97, 720, - 97, 720, 720, 280, 720, 97, 720, 97, 281, 97, - 97, 97, 720, 720, 720, 720, 97, 720, 97, 720, - 97, 97, 97, 720, 97, 720, 720, 284, 97, 97, - 285, 286, 97, 97, 287, 97, 97, 97, 720, 97, - 97, 720, 97, 720, 720, 290, 288, 720, 97, 97, - 97, 97, 97, 97, 97, 97, 97, 289, 97, 291, - 97, 97, 720, 97, 720, 720, 97, 720, 720, 720, - - 97, 720, 97, 97, 97, 97, 97, 97, 97, 97, - 97, 97, 292, 720, 97, 97, 720, 295, 720, 720, - 720, 293, 720, 97, 97, 97, 97, 720, 97, 97, - 97, 720, 296, 97, 720, 97, 720, 720, 720, 97, - 720, 97, 297, 97, 720, 97, 97, 97, 97, 97, - 720, 720, 720, 720, 97, 720, 97, 97, 97, 720, - 97, 720, 720, 97, 299, 97, 720, 97, 720, 97, - 720, 97, 720, 97, 97, 97, 97, 97, 720, 720, - 300, 720, 97, 720, 97, 97, 97, 720, 97, 720, - 720, 301, 720, 97, 720, 97, 97, 97, 720, 97, - - 720, 305, 97, 720, 97, 302, 304, 720, 97, 720, - 97, 720, 97, 97, 97, 97, 97, 720, 720, 97, - 720, 97, 720, 97, 720, 97, 720, 97, 720, 97, - 720, 97, 306, 97, 97, 97, 720, 307, 97, 720, - 720, 720, 308, 720, 97, 97, 97, 97, 97, 97, - 97, 720, 720, 97, 97, 720, 720, 720, 720, 720, - 97, 97, 97, 720, 97, 720, 720, 97, 309, 97, - 720, 97, 720, 97, 720, 97, 720, 97, 310, 97, - 97, 97, 97, 720, 311, 312, 97, 720, 97, 720, - 720, 313, 97, 720, 97, 720, 97, 720, 97, 97, - - 97, 97, 97, 720, 720, 720, 720, 97, 720, 97, - 97, 97, 315, 97, 316, 319, 720, 720, 97, 317, - 97, 97, 97, 720, 97, 720, 720, 720, 318, 97, - 720, 97, 97, 97, 720, 97, 720, 720, 323, 720, - 97, 720, 97, 720, 97, 720, 97, 248, 248, 248, - 720, 97, 720, 720, 720, 720, 97, 97, 720, 324, - 324, 324, 324, 324, 324, 324, 97, 97, 329, 97, - 97, 97, 97, 330, 720, 97, 97, 720, 97, 331, - 720, 720, 97, 720, 97, 720, 97, 720, 97, 332, - 97, 97, 97, 97, 97, 720, 720, 97, 720, 720, - - 720, 720, 720, 97, 97, 333, 97, 97, 97, 336, - 97, 97, 97, 97, 335, 720, 720, 720, 720, 720, - 97, 97, 97, 97, 97, 97, 97, 337, 720, 97, - 97, 720, 97, 720, 720, 720, 97, 720, 97, 334, - 97, 720, 97, 97, 97, 97, 97, 720, 720, 338, - 720, 97, 720, 97, 97, 97, 339, 97, 720, 720, - 720, 720, 97, 720, 97, 720, 97, 720, 97, 97, - 340, 341, 97, 97, 720, 97, 720, 720, 720, 97, - 720, 97, 97, 97, 97, 97, 97, 343, 342, 97, - 97, 97, 344, 97, 97, 345, 97, 720, 720, 346, - - 97, 720, 97, 97, 97, 97, 97, 97, 97, 97, - 97, 97, 97, 720, 720, 97, 720, 97, 720, 720, - 720, 97, 720, 97, 348, 347, 720, 97, 97, 97, - 97, 97, 720, 720, 720, 720, 97, 720, 97, 97, - 97, 720, 97, 720, 349, 720, 720, 97, 720, 97, - 720, 350, 720, 97, 97, 351, 720, 352, 97, 720, - 97, 720, 720, 720, 97, 720, 97, 720, 97, 720, - 97, 97, 97, 97, 97, 720, 720, 97, 720, 97, - 720, 97, 720, 97, 720, 97, 720, 97, 720, 97, - 97, 97, 97, 97, 720, 356, 97, 720, 720, 357, - - 720, 720, 97, 97, 97, 97, 97, 97, 97, 358, - 720, 97, 97, 360, 97, 720, 355, 720, 97, 720, - 97, 720, 97, 364, 97, 720, 97, 359, 97, 97, - 361, 720, 97, 97, 362, 720, 720, 720, 720, 97, - 97, 97, 97, 97, 97, 363, 97, 720, 97, 720, - 97, 97, 97, 97, 97, 720, 720, 365, 720, 97, - 720, 97, 367, 97, 97, 97, 720, 97, 720, 720, - 720, 97, 97, 97, 97, 97, 97, 97, 97, 720, - 97, 720, 368, 97, 720, 97, 372, 97, 371, 97, - 369, 97, 720, 720, 720, 97, 97, 97, 720, 97, - - 97, 97, 720, 373, 97, 720, 720, 720, 720, 720, - 97, 97, 97, 97, 97, 97, 374, 97, 97, 97, - 97, 720, 720, 720, 720, 720, 720, 97, 97, 97, - 97, 97, 97, 97, 720, 720, 97, 97, 720, 720, - 720, 720, 720, 97, 720, 97, 97, 97, 720, 377, - 720, 376, 97, 720, 97, 720, 97, 97, 97, 720, - 97, 720, 720, 720, 97, 97, 97, 97, 97, 378, - 720, 97, 97, 97, 379, 97, 97, 720, 97, 720, - 720, 381, 97, 720, 97, 97, 97, 97, 97, 97, - 97, 97, 97, 97, 97, 720, 97, 97, 720, 97, - - 720, 720, 720, 97, 720, 97, 97, 97, 97, 97, - 97, 383, 97, 97, 97, 97, 720, 380, 97, 720, - 97, 720, 720, 385, 97, 720, 97, 720, 97, 720, - 97, 97, 97, 384, 97, 720, 720, 97, 720, 97, - 720, 97, 720, 97, 720, 97, 720, 97, 720, 97, - 97, 97, 97, 720, 387, 720, 97, 720, 720, 720, - 720, 720, 97, 720, 97, 720, 97, 386, 720, 97, - 720, 97, 324, 324, 324, 324, 324, 324, 324, 97, - 720, 97, 720, 97, 397, 97, 720, 396, 97, 720, - 720, 720, 720, 97, 398, 97, 720, 97, 720, 97, - - 399, 97, 720, 97, 97, 97, 720, 97, 720, 97, - 391, 97, 97, 97, 720, 97, 401, 97, 720, 97, - 97, 97, 720, 97, 720, 97, 402, 97, 97, 97, - 720, 97, 720, 720, 720, 97, 97, 97, 97, 97, - 720, 403, 720, 720, 97, 720, 97, 720, 97, 97, - 97, 720, 97, 720, 720, 720, 97, 97, 97, 97, - 97, 404, 720, 97, 97, 97, 405, 97, 97, 720, - 97, 406, 720, 720, 97, 720, 97, 97, 97, 97, - 407, 97, 97, 97, 97, 97, 97, 720, 408, 97, - 720, 97, 409, 410, 720, 97, 720, 97, 720, 97, - - 720, 97, 720, 97, 97, 97, 97, 97, 720, 411, - 97, 720, 720, 412, 720, 720, 97, 97, 97, 97, - 97, 97, 97, 413, 720, 97, 97, 720, 720, 720, - 720, 720, 97, 720, 97, 720, 97, 97, 415, 720, - 414, 97, 720, 97, 720, 720, 720, 97, 720, 97, - 720, 97, 720, 97, 97, 97, 97, 97, 720, 720, - 97, 416, 97, 720, 97, 720, 97, 720, 97, 720, - 97, 417, 418, 97, 97, 97, 97, 720, 720, 97, - 720, 720, 720, 422, 720, 97, 97, 97, 97, 97, - 97, 720, 720, 97, 97, 97, 97, 423, 720, 424, - - 720, 720, 720, 97, 720, 97, 97, 97, 97, 720, - 97, 425, 97, 97, 97, 97, 426, 720, 720, 720, - 720, 720, 720, 97, 97, 427, 97, 97, 97, 97, - 720, 720, 97, 97, 720, 97, 720, 720, 429, 97, - 720, 97, 720, 97, 720, 97, 97, 97, 428, 97, - 431, 720, 720, 432, 97, 720, 97, 97, 97, 720, - 97, 720, 720, 430, 720, 97, 720, 97, 97, 97, - 720, 97, 720, 720, 97, 720, 97, 720, 97, 720, - 97, 720, 97, 720, 97, 97, 97, 97, 97, 720, - 720, 97, 434, 97, 720, 97, 720, 97, 720, 97, - - 720, 97, 97, 435, 97, 97, 720, 720, 720, 720, - 97, 720, 97, 97, 97, 720, 97, 720, 437, 97, - 438, 97, 720, 97, 720, 97, 720, 97, 720, 97, - 97, 439, 97, 97, 720, 720, 720, 720, 97, 720, - 97, 720, 97, 97, 97, 720, 97, 720, 440, 97, - 442, 720, 720, 97, 97, 97, 97, 97, 443, 444, - 97, 720, 97, 720, 97, 97, 97, 97, 97, 720, - 720, 720, 720, 97, 720, 720, 720, 97, 97, 97, - 720, 97, 720, 720, 97, 447, 97, 720, 97, 445, - 97, 720, 97, 720, 97, 720, 97, 97, 97, 97, - - 97, 720, 449, 97, 720, 720, 720, 720, 720, 97, - 97, 97, 97, 97, 97, 97, 450, 720, 97, 97, - 720, 97, 720, 720, 720, 97, 720, 97, 720, 97, - 720, 97, 720, 97, 97, 97, 97, 460, 461, 97, - 97, 720, 720, 720, 720, 720, 97, 97, 97, 97, - 97, 97, 720, 97, 720, 97, 720, 97, 97, 97, - 452, 97, 97, 720, 720, 462, 97, 720, 97, 720, - 720, 720, 97, 720, 464, 720, 97, 720, 97, 97, - 97, 97, 97, 720, 720, 97, 465, 97, 466, 97, - 720, 97, 720, 97, 720, 97, 97, 97, 97, 97, - - 720, 720, 97, 467, 97, 720, 97, 720, 97, 720, - 97, 720, 97, 97, 468, 97, 97, 720, 720, 720, - 720, 97, 720, 97, 97, 97, 470, 97, 720, 720, - 97, 469, 97, 720, 97, 720, 97, 720, 97, 720, - 97, 720, 97, 97, 97, 720, 720, 97, 471, 97, - 472, 720, 720, 97, 720, 473, 720, 97, 720, 97, - 720, 97, 720, 97, 97, 97, 97, 97, 720, 475, - 97, 720, 97, 720, 97, 720, 474, 720, 97, 720, - 97, 97, 97, 97, 97, 720, 720, 97, 720, 97, - 720, 97, 720, 97, 476, 97, 720, 97, 97, 97, - - 97, 97, 720, 720, 97, 720, 97, 720, 97, 720, - 97, 478, 97, 720, 97, 477, 97, 97, 97, 479, - 97, 97, 720, 97, 720, 483, 720, 720, 720, 720, - 97, 97, 97, 97, 97, 97, 97, 720, 720, 97, - 97, 720, 97, 484, 485, 720, 97, 720, 97, 720, - 97, 720, 97, 97, 97, 97, 97, 720, 720, 97, - 720, 97, 487, 97, 720, 97, 720, 97, 720, 97, - 486, 97, 97, 97, 97, 488, 720, 720, 97, 720, - 97, 489, 720, 720, 97, 720, 97, 720, 97, 720, - 97, 97, 97, 97, 97, 720, 720, 720, 720, 97, - - 720, 97, 720, 97, 720, 97, 97, 490, 720, 491, - 97, 720, 97, 720, 720, 720, 97, 720, 97, 720, - 97, 720, 97, 97, 97, 97, 97, 720, 720, 492, - 493, 97, 720, 97, 97, 97, 720, 97, 720, 495, - 97, 720, 97, 720, 97, 720, 97, 720, 97, 720, - 97, 97, 97, 97, 97, 720, 720, 97, 720, 97, - 720, 97, 720, 497, 720, 97, 720, 97, 97, 498, - 97, 97, 720, 720, 720, 720, 97, 720, 97, 720, - 97, 97, 97, 720, 500, 720, 499, 97, 720, 97, - 720, 97, 720, 97, 720, 97, 720, 720, 720, 97, - - 97, 97, 720, 97, 97, 503, 720, 97, 97, 502, - 97, 720, 720, 720, 97, 720, 97, 97, 97, 97, - 97, 97, 97, 97, 97, 97, 97, 505, 97, 97, - 720, 97, 720, 720, 720, 97, 720, 97, 97, 97, - 97, 97, 97, 97, 97, 97, 97, 97, 507, 97, - 97, 720, 720, 720, 720, 720, 97, 720, 97, 97, - 97, 97, 97, 97, 517, 97, 720, 518, 97, 519, - 97, 720, 97, 720, 97, 720, 97, 720, 720, 720, - 97, 97, 97, 97, 97, 720, 521, 720, 720, 97, - 720, 97, 720, 97, 97, 97, 720, 97, 720, 720, - - 720, 97, 97, 522, 97, 97, 523, 97, 97, 720, - 97, 720, 720, 97, 524, 97, 720, 97, 97, 97, - 720, 97, 720, 720, 720, 97, 97, 97, 97, 97, - 97, 97, 97, 720, 97, 720, 720, 97, 525, 97, - 720, 97, 97, 97, 526, 97, 720, 720, 720, 97, - 97, 97, 97, 97, 97, 97, 97, 720, 97, 720, - 527, 97, 720, 97, 720, 97, 97, 97, 720, 97, - 720, 720, 720, 97, 97, 97, 97, 97, 97, 97, - 97, 528, 97, 720, 529, 97, 720, 530, 720, 97, - 97, 97, 720, 97, 720, 720, 720, 97, 97, 97, - - 531, 97, 97, 97, 97, 720, 97, 720, 720, 97, - 536, 97, 720, 97, 97, 97, 720, 97, 720, 720, - 720, 97, 97, 97, 97, 97, 97, 97, 97, 537, - 97, 720, 720, 97, 720, 97, 720, 97, 720, 97, - 720, 97, 720, 720, 720, 97, 97, 97, 97, 97, - 720, 539, 538, 720, 97, 720, 97, 720, 97, 97, - 97, 720, 97, 720, 720, 720, 97, 97, 97, 97, - 97, 97, 720, 97, 540, 97, 97, 541, 97, 97, - 720, 720, 97, 720, 720, 720, 97, 720, 97, 97, - 97, 97, 97, 97, 543, 97, 97, 97, 97, 720, - - 97, 97, 720, 720, 720, 720, 720, 545, 720, 97, - 97, 97, 97, 97, 97, 720, 97, 547, 720, 97, - 720, 97, 720, 97, 542, 97, 720, 97, 720, 97, - 720, 97, 97, 97, 720, 97, 720, 720, 720, 97, - 97, 97, 97, 97, 720, 549, 720, 720, 97, 720, - 97, 720, 97, 550, 97, 720, 97, 720, 720, 563, - 97, 97, 97, 97, 97, 720, 552, 720, 720, 97, - 554, 97, 720, 97, 97, 97, 720, 97, 720, 720, - 720, 97, 97, 97, 97, 97, 97, 97, 97, 720, - 97, 720, 720, 97, 564, 97, 565, 97, 720, 97, - - 720, 97, 720, 97, 720, 97, 97, 97, 720, 97, - 720, 97, 720, 97, 97, 97, 720, 97, 720, 567, - 720, 97, 97, 97, 97, 97, 720, 569, 720, 568, - 97, 720, 97, 720, 97, 97, 97, 720, 97, 720, - 720, 572, 97, 97, 570, 97, 97, 97, 571, 97, - 97, 97, 720, 97, 97, 720, 97, 720, 720, 720, - 97, 720, 97, 97, 97, 97, 97, 97, 97, 97, - 97, 97, 97, 720, 573, 97, 720, 97, 720, 720, - 720, 97, 720, 97, 574, 97, 720, 97, 97, 97, - 97, 97, 720, 720, 97, 720, 97, 579, 97, 720, - - 97, 720, 97, 720, 97, 97, 97, 97, 97, 720, - 720, 97, 720, 97, 720, 97, 720, 97, 720, 97, - 720, 97, 97, 97, 97, 97, 720, 720, 97, 720, - 97, 720, 97, 720, 97, 580, 97, 720, 97, 97, - 97, 97, 97, 720, 720, 720, 720, 97, 720, 97, - 97, 97, 720, 97, 583, 720, 97, 581, 97, 720, - 97, 720, 97, 588, 97, 720, 97, 97, 97, 97, - 97, 720, 720, 720, 586, 97, 720, 97, 97, 97, - 720, 97, 720, 720, 97, 720, 97, 720, 97, 720, - 97, 720, 97, 720, 97, 97, 97, 97, 97, 720, - - 720, 97, 720, 97, 720, 97, 720, 590, 720, 97, - 720, 592, 97, 97, 97, 97, 720, 720, 720, 720, - 97, 720, 97, 97, 97, 720, 97, 720, 720, 601, - 720, 97, 720, 97, 97, 97, 602, 97, 720, 720, - 97, 720, 97, 720, 97, 720, 97, 720, 97, 720, - 97, 97, 97, 97, 97, 720, 720, 720, 720, 97, - 720, 97, 97, 97, 604, 97, 720, 720, 603, 720, - 97, 720, 97, 97, 97, 720, 97, 720, 605, 97, - 720, 97, 720, 97, 720, 97, 720, 97, 720, 97, - 720, 606, 97, 97, 97, 607, 720, 97, 97, 608, - - 97, 720, 720, 720, 97, 720, 97, 97, 97, 97, - 609, 97, 97, 97, 97, 97, 97, 720, 720, 97, - 720, 720, 720, 97, 720, 97, 720, 97, 720, 97, - 720, 613, 720, 97, 97, 97, 614, 97, 97, 97, - 720, 720, 97, 720, 720, 615, 617, 720, 97, 97, - 97, 97, 97, 97, 97, 720, 720, 97, 97, 720, - 720, 720, 97, 720, 97, 720, 620, 720, 97, 720, - 97, 720, 97, 97, 97, 622, 97, 720, 720, 720, - 97, 97, 97, 97, 97, 720, 720, 720, 623, 97, - 720, 720, 720, 97, 720, 97, 720, 97, 598, 598, - - 598, 720, 97, 720, 720, 720, 720, 97, 97, 720, - 630, 630, 630, 630, 630, 630, 630, 97, 97, 97, - 634, 97, 97, 97, 97, 720, 97, 97, 720, 720, - 633, 720, 720, 97, 97, 97, 97, 97, 97, 97, - 97, 720, 97, 97, 720, 720, 720, 720, 720, 97, - 97, 97, 97, 97, 97, 97, 720, 635, 97, 97, - 720, 97, 720, 720, 720, 97, 720, 97, 636, 97, - 720, 97, 97, 97, 97, 97, 720, 720, 97, 637, - 97, 720, 97, 720, 97, 720, 97, 720, 97, 97, - 97, 97, 97, 720, 720, 720, 720, 97, 720, 97, - - 97, 641, 720, 97, 720, 720, 97, 720, 97, 720, - 97, 720, 97, 642, 97, 720, 97, 97, 644, 97, - 97, 720, 720, 97, 647, 97, 720, 97, 720, 97, - 649, 97, 720, 97, 97, 97, 97, 97, 720, 720, - 720, 650, 97, 720, 97, 720, 97, 720, 97, 720, - 720, 97, 97, 97, 630, 630, 630, 630, 630, 630, - 630, 97, 97, 659, 97, 97, 97, 97, 97, 720, - 97, 97, 720, 720, 720, 720, 720, 97, 97, 97, - 660, 97, 97, 97, 720, 720, 97, 97, 720, 720, - 720, 720, 656, 97, 97, 97, 720, 97, 720, 720, - - 97, 661, 97, 720, 97, 720, 97, 720, 97, 720, - 97, 665, 666, 97, 97, 97, 720, 720, 97, 97, - 720, 97, 668, 673, 720, 97, 720, 97, 97, 97, - 97, 97, 97, 97, 97, 97, 671, 97, 97, 720, - 97, 720, 674, 720, 720, 720, 720, 720, 97, 720, - 97, 720, 97, 657, 657, 657, 720, 97, 720, 720, - 720, 720, 97, 720, 720, 630, 630, 630, 630, 630, - 630, 630, 97, 97, 97, 720, 97, 720, 720, 720, - 681, 97, 720, 97, 97, 97, 720, 97, 720, 720, - 97, 682, 97, 720, 97, 720, 97, 720, 97, 720, - - 97, 97, 97, 97, 97, 720, 720, 683, 720, 97, - 720, 97, 97, 97, 720, 97, 720, 720, 720, 720, - 97, 720, 97, 97, 97, 720, 97, 720, 720, 97, - 687, 97, 720, 97, 720, 97, 720, 97, 720, 97, - 97, 97, 97, 97, 720, 720, 690, 692, 97, 720, - 97, 720, 97, 97, 97, 699, 97, 720, 720, 97, - 720, 720, 720, 97, 97, 97, 97, 97, 97, 700, - 97, 720, 97, 720, 97, 97, 97, 97, 97, 720, - 97, 720, 720, 97, 720, 720, 720, 97, 720, 97, - 97, 97, 97, 720, 97, 97, 97, 720, 705, 97, - - 702, 720, 720, 720, 720, 97, 720, 97, 720, 97, - 697, 697, 697, 720, 97, 720, 720, 720, 720, 97, - 720, 720, 630, 630, 630, 630, 630, 630, 630, 97, - 97, 97, 720, 97, 720, 720, 97, 720, 97, 720, - 97, 709, 97, 710, 97, 720, 97, 97, 97, 97, - 97, 720, 720, 720, 720, 97, 720, 97, 97, 97, - 720, 97, 720, 714, 97, 720, 97, 720, 97, 720, - 97, 720, 97, 720, 717, 97, 97, 97, 97, 720, - 720, 97, 720, 97, 720, 97, 720, 97, 720, 97, - 720, 97, 720, 97, 97, 97, 720, 720, 720, 720, - - 97, 54, 54, 54, 54, 54, 54, 54, 54, 54, - 54, 54, 54, 58, 58, 58, 58, 58, 58, 58, - 58, 58, 58, 58, 58, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 62, 65, 65, 65, - 65, 65, 65, 65, 65, 65, 65, 65, 65, 74, + 708, 97, 97, 97, 708, 97, 708, 708, 708, 708, + 97, 223, 97, 708, 97, 97, 97, 708, 225, 708, + 708, 224, 226, 708, 708, 97, 708, 97, 708, 97, + 228, 97, 708, 708, 97, 708, 708, 97, 708, 708, + + 708, 229, 708, 97, 708, 97, 708, 97, 97, 97, + 97, 97, 230, 708, 97, 231, 97, 708, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 235, + 233, 708, 232, 97, 708, 97, 708, 234, 708, 97, + 97, 97, 708, 708, 97, 708, 236, 708, 708, 708, + 97, 97, 97, 97, 97, 97, 97, 97, 708, 97, + 97, 708, 708, 708, 708, 708, 97, 97, 97, 97, + 97, 238, 97, 97, 241, 237, 97, 242, 708, 240, + 708, 708, 97, 97, 97, 97, 97, 97, 97, 708, + 708, 97, 97, 708, 708, 708, 708, 708, 97, 708, + + 97, 708, 97, 248, 248, 248, 246, 97, 154, 154, + 154, 154, 154, 154, 154, 708, 708, 708, 708, 708, + 708, 708, 708, 97, 97, 708, 258, 708, 708, 708, + 708, 708, 708, 97, 97, 97, 97, 97, 97, 97, + 97, 249, 97, 97, 708, 708, 247, 708, 708, 97, + 259, 97, 97, 97, 97, 97, 708, 708, 97, 97, + 708, 708, 708, 97, 708, 97, 97, 97, 260, 97, + 261, 708, 708, 97, 97, 97, 97, 97, 97, 97, + 97, 708, 97, 708, 708, 97, 708, 97, 708, 97, + 708, 97, 708, 97, 708, 97, 262, 263, 97, 97, + + 708, 97, 708, 97, 708, 97, 97, 97, 708, 97, + 265, 264, 708, 97, 97, 97, 97, 97, 708, 708, + 708, 708, 97, 708, 97, 708, 97, 97, 97, 708, + 97, 708, 708, 266, 97, 97, 97, 97, 267, 97, + 708, 97, 708, 97, 268, 269, 97, 270, 97, 97, + 708, 708, 272, 708, 708, 271, 708, 708, 97, 97, + 97, 97, 97, 97, 97, 708, 708, 97, 97, 708, + 97, 708, 708, 708, 97, 708, 97, 273, 97, 708, + 97, 97, 97, 97, 97, 708, 708, 97, 708, 97, + 275, 97, 274, 97, 708, 97, 708, 97, 97, 97, + + 97, 97, 708, 708, 97, 708, 97, 278, 276, 708, + 97, 277, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 708, 708, 97, 708, 97, 97, 97, 708, 97, + 708, 708, 279, 708, 97, 708, 97, 280, 97, 97, + 97, 708, 708, 708, 708, 97, 708, 97, 708, 97, + 97, 97, 708, 97, 708, 708, 283, 97, 97, 284, + 285, 97, 97, 286, 97, 97, 97, 708, 97, 97, + 708, 97, 708, 708, 289, 287, 708, 97, 97, 97, + 97, 97, 97, 97, 97, 97, 288, 97, 290, 97, + 97, 708, 97, 708, 708, 97, 708, 708, 708, 97, + + 708, 97, 97, 97, 97, 97, 97, 97, 97, 97, + 97, 291, 708, 97, 97, 708, 294, 708, 708, 708, + 292, 708, 97, 97, 97, 97, 708, 97, 97, 97, + 708, 295, 97, 708, 97, 708, 708, 708, 97, 708, + 97, 296, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 708, 708, 97, 708, 97, 97, 97, 708, 97, + 708, 708, 97, 298, 97, 708, 97, 708, 97, 708, + 97, 708, 97, 97, 97, 97, 97, 708, 708, 299, + 708, 97, 708, 97, 97, 97, 708, 97, 708, 708, + 300, 708, 97, 708, 97, 97, 97, 708, 97, 708, + + 304, 97, 708, 97, 301, 303, 708, 97, 708, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 97, 708, + 97, 708, 97, 708, 97, 708, 97, 708, 97, 708, + 97, 305, 97, 97, 97, 708, 306, 97, 708, 708, + 708, 307, 708, 97, 97, 97, 97, 97, 97, 97, + 708, 708, 97, 97, 708, 708, 708, 708, 708, 97, + 97, 97, 708, 97, 708, 708, 97, 308, 97, 708, + 97, 708, 97, 708, 97, 708, 97, 309, 97, 97, + 97, 97, 708, 310, 311, 97, 708, 97, 708, 708, + 312, 97, 708, 97, 708, 97, 708, 97, 97, 97, + + 97, 97, 708, 708, 708, 708, 97, 708, 97, 97, + 97, 314, 97, 315, 318, 708, 708, 97, 316, 97, + 97, 97, 708, 97, 708, 708, 708, 317, 97, 708, + 97, 97, 97, 708, 97, 708, 708, 322, 708, 97, + 708, 97, 708, 97, 708, 97, 248, 248, 248, 708, + 97, 708, 708, 708, 708, 97, 708, 708, 323, 323, + 323, 323, 323, 323, 323, 97, 97, 328, 708, 97, + 708, 708, 97, 329, 97, 708, 97, 708, 97, 708, + 97, 708, 97, 330, 97, 97, 97, 97, 97, 708, + 708, 97, 708, 708, 708, 708, 708, 97, 97, 331, + + 97, 97, 97, 334, 97, 97, 97, 97, 333, 708, + 708, 708, 708, 708, 97, 97, 97, 97, 97, 97, + 97, 335, 708, 97, 97, 708, 97, 708, 708, 708, + 97, 708, 97, 332, 97, 708, 97, 97, 97, 97, + 97, 708, 708, 336, 708, 97, 708, 97, 97, 97, + 337, 97, 708, 708, 708, 708, 97, 708, 97, 708, + 97, 708, 97, 97, 338, 339, 97, 97, 708, 97, + 708, 708, 708, 97, 708, 97, 97, 97, 97, 97, + 97, 341, 340, 97, 97, 97, 342, 97, 97, 343, + 97, 708, 708, 344, 97, 708, 97, 97, 97, 97, + + 97, 97, 97, 97, 97, 97, 97, 708, 708, 97, + 708, 97, 708, 708, 708, 97, 708, 97, 346, 345, + 708, 97, 97, 97, 97, 97, 708, 708, 708, 708, + 97, 708, 97, 97, 97, 708, 97, 708, 347, 708, + 708, 97, 708, 97, 708, 348, 708, 97, 97, 349, + 708, 350, 97, 708, 97, 708, 708, 708, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 97, 708, 97, 708, 97, 708, 97, 708, 97, + 708, 97, 708, 97, 97, 97, 97, 97, 708, 354, + 97, 708, 708, 355, 708, 708, 97, 97, 97, 97, + + 97, 97, 97, 356, 708, 97, 97, 358, 97, 708, + 353, 708, 97, 708, 97, 708, 97, 362, 97, 708, + 97, 357, 97, 97, 359, 708, 97, 97, 360, 708, + 708, 708, 708, 97, 97, 97, 97, 97, 97, 361, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 363, 708, 97, 708, 97, 365, 97, 97, 97, + 708, 97, 708, 708, 708, 97, 97, 97, 97, 97, + 97, 97, 97, 708, 97, 708, 366, 97, 708, 97, + 370, 97, 369, 97, 367, 97, 708, 708, 708, 97, + 97, 97, 708, 97, 97, 97, 708, 371, 97, 708, + + 708, 708, 708, 708, 97, 97, 97, 97, 97, 97, + 372, 97, 97, 97, 97, 708, 708, 708, 708, 708, + 708, 97, 97, 97, 97, 97, 97, 97, 708, 708, + 97, 97, 708, 708, 708, 708, 708, 97, 708, 97, + 97, 97, 708, 375, 708, 374, 97, 708, 97, 708, + 97, 97, 97, 708, 97, 708, 708, 708, 97, 97, + 97, 97, 97, 376, 708, 97, 97, 97, 377, 97, + 97, 708, 97, 708, 708, 379, 97, 708, 97, 97, + 97, 97, 97, 97, 97, 97, 97, 97, 97, 708, + 97, 97, 708, 97, 708, 708, 708, 97, 708, 97, + + 97, 97, 97, 97, 97, 381, 97, 97, 97, 97, + 708, 378, 97, 708, 97, 708, 708, 383, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 382, 97, 708, + 708, 97, 708, 97, 708, 97, 708, 97, 708, 97, + 708, 97, 708, 97, 97, 97, 97, 708, 385, 708, + 97, 708, 708, 708, 708, 708, 97, 708, 97, 708, + 97, 384, 708, 97, 708, 97, 323, 323, 323, 323, + 323, 323, 323, 97, 708, 97, 708, 97, 97, 395, + 708, 394, 97, 396, 97, 708, 708, 708, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 708, + + 398, 97, 708, 97, 389, 97, 708, 97, 708, 97, + 708, 97, 708, 97, 97, 97, 97, 399, 708, 97, + 97, 708, 400, 708, 708, 708, 97, 97, 97, 97, + 97, 97, 708, 97, 708, 97, 708, 97, 97, 97, + 97, 97, 402, 97, 708, 708, 97, 708, 708, 708, + 97, 97, 401, 97, 97, 97, 708, 97, 403, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 708, 708, + 97, 708, 97, 708, 404, 405, 97, 708, 97, 406, + 708, 708, 97, 97, 97, 97, 97, 407, 708, 708, + 708, 97, 708, 97, 708, 97, 408, 97, 708, 97, + + 409, 97, 708, 97, 97, 97, 708, 97, 708, 97, + 708, 97, 97, 97, 708, 97, 708, 410, 708, 97, + 97, 97, 708, 97, 97, 412, 708, 411, 97, 708, + 97, 708, 708, 708, 97, 708, 97, 708, 97, 708, + 97, 97, 97, 97, 97, 708, 708, 97, 413, 97, + 708, 97, 708, 97, 708, 97, 708, 97, 414, 415, + 97, 97, 97, 97, 708, 708, 97, 708, 708, 708, + 419, 708, 97, 97, 97, 97, 97, 97, 708, 708, + 97, 97, 97, 97, 420, 708, 421, 708, 708, 708, + 97, 708, 97, 97, 97, 97, 708, 97, 422, 97, + + 97, 97, 97, 423, 708, 708, 708, 708, 708, 708, + 97, 97, 424, 97, 97, 97, 97, 708, 708, 97, + 97, 708, 97, 708, 708, 426, 97, 708, 97, 708, + 97, 708, 97, 97, 97, 425, 97, 428, 708, 708, + 429, 97, 708, 97, 97, 97, 708, 97, 708, 708, + 427, 708, 97, 708, 97, 97, 97, 708, 97, 708, + 708, 97, 708, 97, 708, 97, 708, 97, 708, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 97, 431, + 97, 708, 97, 708, 97, 708, 97, 708, 97, 97, + 432, 97, 97, 708, 708, 708, 708, 97, 708, 97, + + 97, 97, 708, 97, 708, 434, 97, 435, 97, 708, + 97, 708, 97, 708, 97, 708, 97, 97, 436, 97, + 97, 708, 708, 708, 708, 97, 708, 97, 708, 97, + 97, 97, 708, 97, 708, 437, 97, 439, 708, 708, + 97, 97, 97, 97, 97, 440, 441, 97, 708, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 708, 708, + 97, 708, 708, 708, 97, 97, 97, 708, 97, 708, + 708, 97, 444, 97, 708, 97, 442, 97, 708, 97, + 708, 97, 708, 97, 97, 97, 97, 97, 708, 446, + 97, 708, 708, 708, 708, 708, 97, 97, 97, 97, + + 97, 97, 97, 447, 708, 97, 97, 708, 97, 708, + 708, 708, 97, 708, 97, 708, 97, 708, 97, 708, + 97, 97, 97, 457, 97, 708, 708, 97, 708, 708, + 97, 708, 708, 708, 97, 708, 97, 708, 97, 708, + 97, 97, 97, 97, 97, 708, 708, 449, 458, 97, + 708, 97, 97, 460, 708, 97, 708, 708, 708, 708, + 97, 708, 97, 97, 97, 708, 97, 708, 708, 97, + 461, 97, 462, 97, 708, 97, 708, 97, 708, 97, + 97, 97, 97, 97, 708, 708, 97, 463, 97, 708, + 97, 708, 97, 708, 97, 708, 97, 97, 464, 97, + + 97, 708, 708, 708, 708, 97, 708, 97, 97, 97, + 466, 97, 708, 708, 97, 465, 97, 708, 97, 708, + 97, 708, 97, 708, 97, 708, 97, 97, 97, 708, + 708, 97, 467, 97, 468, 708, 708, 97, 708, 469, + 708, 97, 708, 97, 708, 97, 708, 97, 97, 97, + 97, 97, 708, 471, 97, 708, 97, 708, 97, 708, + 470, 708, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 97, 708, 97, 708, 97, 708, 97, 472, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 97, 708, + 97, 708, 97, 708, 97, 474, 97, 708, 97, 473, + + 97, 97, 97, 475, 97, 97, 708, 97, 708, 479, + 708, 708, 708, 708, 97, 97, 97, 97, 97, 97, + 97, 708, 708, 97, 97, 708, 97, 480, 481, 708, + 97, 708, 97, 708, 97, 708, 97, 97, 97, 97, + 97, 708, 708, 97, 708, 97, 483, 97, 708, 97, + 708, 97, 708, 97, 482, 97, 97, 97, 97, 484, + 708, 708, 97, 708, 97, 485, 708, 708, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 708, 708, 97, 708, 97, 708, 97, 708, 97, + 97, 486, 708, 487, 97, 708, 97, 708, 708, 708, + + 97, 708, 97, 708, 97, 708, 97, 97, 97, 97, + 97, 708, 708, 488, 489, 97, 708, 97, 97, 97, + 708, 97, 708, 491, 97, 708, 97, 708, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 97, 708, 97, 708, 97, 708, 493, 708, 97, + 708, 97, 97, 494, 97, 97, 708, 708, 708, 708, + 97, 708, 97, 708, 97, 97, 97, 708, 496, 708, + 495, 97, 708, 97, 708, 97, 708, 97, 708, 97, + 708, 708, 708, 97, 97, 97, 708, 97, 97, 499, + 708, 97, 97, 498, 97, 708, 708, 708, 97, 708, + + 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, + 97, 501, 97, 97, 708, 97, 708, 708, 708, 97, + 708, 97, 97, 97, 97, 97, 97, 97, 97, 97, + 97, 97, 503, 708, 97, 708, 708, 708, 708, 708, + 97, 708, 97, 97, 97, 708, 97, 708, 513, 97, + 514, 708, 708, 97, 708, 97, 97, 97, 97, 708, + 97, 97, 97, 708, 516, 97, 708, 97, 708, 708, + 708, 97, 708, 97, 708, 97, 708, 97, 97, 517, + 97, 97, 708, 708, 97, 708, 97, 708, 97, 708, + 518, 519, 97, 708, 97, 97, 97, 97, 97, 708, + + 708, 97, 708, 97, 708, 97, 708, 97, 708, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 708, 520, + 97, 708, 97, 97, 97, 521, 97, 708, 708, 97, + 708, 97, 708, 97, 708, 97, 708, 97, 708, 97, + 97, 97, 97, 97, 708, 522, 97, 708, 97, 708, + 97, 708, 97, 708, 97, 708, 97, 97, 97, 97, + 97, 708, 708, 708, 523, 97, 708, 97, 97, 97, + 708, 97, 708, 708, 525, 524, 97, 708, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 97, 708, 97, 708, 526, 708, 97, 531, 97, + + 708, 97, 97, 97, 97, 97, 708, 708, 708, 708, + 97, 708, 97, 97, 97, 708, 97, 708, 708, 97, + 532, 97, 708, 97, 708, 97, 708, 97, 708, 97, + 97, 97, 97, 97, 708, 708, 97, 708, 97, 534, + 97, 708, 97, 708, 97, 708, 97, 533, 97, 97, + 97, 97, 97, 708, 708, 97, 708, 708, 708, 708, + 708, 97, 97, 97, 97, 97, 97, 97, 536, 535, + 97, 97, 708, 97, 708, 708, 708, 97, 708, 97, + 708, 97, 708, 97, 97, 97, 97, 97, 708, 708, + 97, 708, 97, 708, 97, 708, 538, 708, 97, 708, + + 540, 97, 97, 97, 97, 708, 708, 708, 708, 97, + 708, 97, 97, 97, 708, 97, 542, 708, 537, 708, + 97, 708, 97, 97, 97, 708, 97, 708, 708, 97, + 708, 97, 708, 97, 708, 97, 708, 97, 708, 97, + 708, 97, 97, 97, 97, 708, 708, 544, 97, 708, + 97, 708, 708, 545, 97, 708, 97, 708, 97, 708, + 97, 708, 97, 97, 97, 97, 708, 708, 547, 97, + 549, 97, 708, 708, 708, 97, 708, 97, 708, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 708, 558, + 97, 708, 97, 708, 97, 708, 97, 97, 559, 708, + + 708, 97, 708, 97, 708, 708, 708, 97, 708, 97, + 708, 97, 708, 97, 97, 97, 97, 97, 708, 561, + 708, 708, 97, 708, 97, 708, 97, 97, 97, 708, + 563, 708, 562, 97, 708, 97, 708, 97, 97, 97, + 708, 97, 708, 708, 566, 97, 97, 564, 97, 97, + 97, 565, 97, 97, 97, 708, 97, 97, 708, 97, + 708, 708, 708, 97, 708, 97, 97, 97, 97, 97, + 97, 97, 97, 97, 97, 97, 708, 567, 97, 708, + 97, 708, 708, 708, 97, 708, 97, 568, 97, 708, + 97, 97, 97, 97, 97, 708, 708, 97, 708, 97, + + 573, 97, 708, 97, 708, 97, 708, 97, 97, 97, + 97, 97, 708, 708, 97, 708, 97, 708, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 708, + 708, 97, 708, 97, 708, 97, 708, 97, 574, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 708, 708, + 97, 708, 97, 97, 97, 708, 97, 577, 708, 97, + 575, 97, 708, 97, 708, 97, 582, 97, 708, 97, + 97, 97, 97, 97, 708, 708, 708, 580, 97, 708, + 97, 97, 97, 708, 97, 708, 708, 97, 708, 97, + 708, 97, 708, 97, 708, 97, 708, 97, 97, 97, + + 97, 97, 708, 708, 97, 708, 97, 708, 97, 708, + 584, 708, 97, 708, 586, 97, 97, 97, 97, 708, + 708, 97, 708, 97, 708, 97, 708, 97, 595, 97, + 708, 97, 97, 97, 97, 97, 708, 708, 97, 708, + 97, 708, 97, 708, 97, 708, 97, 708, 97, 708, + 97, 97, 97, 97, 97, 596, 597, 97, 598, 708, + 708, 708, 708, 97, 97, 97, 97, 97, 97, 97, + 97, 600, 97, 97, 708, 708, 708, 708, 708, 97, + 97, 599, 97, 97, 97, 97, 97, 601, 97, 97, + 708, 708, 708, 708, 708, 97, 602, 97, 97, 97, + + 97, 97, 708, 708, 97, 97, 708, 708, 708, 97, + 708, 97, 708, 97, 708, 97, 708, 606, 708, 97, + 97, 97, 607, 97, 97, 97, 708, 708, 97, 708, + 708, 608, 610, 708, 97, 97, 97, 97, 97, 97, + 97, 708, 708, 97, 97, 708, 708, 708, 97, 708, + 97, 708, 613, 708, 97, 708, 97, 708, 97, 97, + 97, 615, 97, 708, 708, 708, 97, 97, 97, 97, + 97, 708, 708, 708, 616, 97, 708, 708, 708, 97, + 708, 97, 708, 97, 592, 592, 592, 708, 97, 708, + 708, 708, 708, 97, 97, 708, 623, 623, 623, 623, + + 623, 623, 623, 97, 97, 626, 97, 97, 97, 97, + 97, 708, 97, 97, 708, 708, 708, 708, 708, 97, + 97, 97, 97, 97, 97, 97, 708, 708, 97, 97, + 708, 708, 708, 97, 708, 97, 708, 97, 708, 97, + 708, 97, 627, 97, 97, 97, 628, 97, 708, 97, + 708, 97, 97, 97, 708, 97, 629, 97, 708, 97, + 97, 97, 708, 97, 708, 97, 708, 97, 97, 97, + 708, 97, 708, 97, 708, 97, 97, 633, 708, 97, + 708, 97, 708, 97, 97, 97, 634, 97, 708, 97, + 708, 97, 97, 636, 708, 97, 639, 97, 708, 97, + + 97, 97, 708, 97, 641, 97, 708, 97, 97, 97, + 708, 97, 642, 708, 708, 97, 97, 97, 708, 97, + 708, 708, 97, 97, 97, 623, 623, 623, 623, 623, + 623, 623, 97, 97, 97, 97, 97, 97, 97, 708, + 708, 97, 97, 708, 708, 708, 97, 708, 97, 708, + 651, 708, 97, 708, 708, 708, 97, 97, 97, 97, + 97, 708, 708, 648, 652, 97, 708, 97, 708, 97, + 708, 97, 708, 97, 708, 97, 656, 97, 97, 657, + 708, 97, 659, 97, 708, 97, 97, 97, 708, 97, + 708, 708, 708, 97, 97, 97, 97, 97, 664, 97, + + 708, 662, 97, 665, 708, 708, 97, 708, 97, 97, + 97, 97, 708, 97, 708, 97, 708, 708, 97, 649, + 649, 649, 708, 708, 708, 708, 708, 708, 97, 97, + 708, 623, 623, 623, 623, 623, 623, 623, 97, 97, + 97, 97, 97, 97, 97, 97, 672, 97, 97, 708, + 708, 708, 673, 708, 97, 97, 97, 97, 97, 97, + 97, 97, 708, 97, 97, 708, 708, 708, 708, 708, + 97, 97, 97, 97, 97, 97, 97, 708, 677, 97, + 97, 708, 97, 708, 680, 708, 97, 708, 97, 682, + 97, 708, 97, 97, 97, 97, 97, 708, 708, 708, + + 708, 97, 708, 97, 97, 97, 708, 97, 708, 689, + 97, 708, 97, 708, 97, 708, 97, 708, 97, 708, + 97, 708, 97, 97, 97, 97, 708, 708, 97, 97, + 708, 694, 708, 691, 708, 97, 708, 97, 97, 97, + 97, 708, 97, 708, 97, 708, 708, 97, 687, 687, + 687, 708, 708, 708, 708, 708, 708, 97, 708, 708, + 623, 623, 623, 623, 623, 623, 623, 97, 97, 97, + 698, 97, 708, 708, 97, 708, 97, 708, 97, 708, + 97, 708, 97, 708, 97, 97, 97, 97, 97, 708, + 702, 97, 708, 97, 708, 705, 708, 97, 708, 97, + + 708, 97, 97, 97, 97, 97, 708, 708, 708, 708, + 97, 708, 97, 708, 97, 708, 97, 708, 708, 708, + 708, 97, 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, - 74, 76, 76, 76, 76, 76, 76, 76, 76, 76, - 76, 76, 76, 83, 83, 83, 720, 83, 83, 83, - 83, 83, 83, 83, 83, 90, 90, 720, 720, 90, - 720, 90, 156, 720, 156, 159, 159, 720, 159, 159, - - 160, 160, 720, 160, 160, 160, 720, 160, 160, 160, - 160, 160, 163, 163, 163, 720, 163, 163, 163, 163, - 163, 163, 163, 163, 165, 165, 165, 165, 165, 165, - 165, 165, 720, 165, 165, 167, 720, 720, 167, 167, - 167, 167, 167, 167, 167, 167, 168, 720, 720, 168, - 168, 168, 168, 168, 168, 168, 168, 170, 720, 720, - 170, 720, 170, 170, 170, 170, 170, 170, 174, 174, - 720, 174, 174, 175, 175, 720, 175, 175, 103, 103, - 720, 103, 103, 15, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720 + 74, 74, 76, 76, 76, 76, 76, 76, 76, 76, + 76, 76, 76, 76, 83, 83, 83, 708, 83, 83, + + 83, 83, 83, 83, 83, 83, 90, 90, 708, 708, + 90, 708, 90, 156, 708, 156, 159, 159, 708, 159, + 159, 160, 160, 708, 160, 160, 160, 708, 160, 160, + 160, 160, 160, 163, 163, 163, 708, 163, 163, 163, + 163, 163, 163, 163, 163, 165, 165, 165, 165, 165, + 165, 165, 165, 708, 165, 165, 167, 708, 708, 167, + 167, 167, 167, 167, 167, 167, 167, 168, 708, 708, + 168, 168, 168, 168, 168, 168, 168, 168, 170, 708, + 708, 170, 708, 170, 170, 170, 170, 170, 170, 174, + 174, 708, 174, 174, 175, 175, 708, 175, 175, 103, + + 103, 708, 103, 103, 15, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708 } ; -static yyconst short int yy_chk[4563] = +static yyconst short int yy_chk[4484] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1282,83 +1267,83 @@ static yyconst short int yy_chk[4563] = 22, 22, 24, 24, 24, 24, 24, 24, 28, 28, 28, 28, 28, 28, 28, 34, 253, 253, 34, 77, 77, 77, 78, 78, 78, 34, 87, 34, 9, 34, - 9, 82, 82, 82, 34, 158, 480, 158, 10, 716, + 9, 82, 82, 82, 34, 158, 476, 158, 10, 704, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, - 11, 11, 11, 11, 13, 480, 13, 87, 38, 79, - 326, 11, 11, 11, 11, 14, 326, 14, 38, 11, + 11, 11, 11, 11, 13, 476, 13, 87, 38, 79, + 325, 11, 11, 11, 11, 14, 325, 14, 38, 11, - 38, 32, 38, 79, 32, 325, 712, 38, 32, 325, - 250, 32, 32, 32, 32, 32, 41, 250, 708, 33, - 32, 11, 11, 11, 32, 33, 41, 328, 41, 33, - 41, 33, 33, 33, 79, 41, 706, 328, 33, 92, + 38, 32, 38, 79, 32, 324, 700, 38, 32, 324, + 250, 32, 32, 32, 32, 32, 41, 250, 697, 33, + 32, 11, 11, 11, 32, 33, 41, 327, 41, 33, + 41, 33, 33, 33, 79, 41, 695, 327, 33, 92, 92, 92, 92, 92, 92, 92, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 12, 41, 395, 35, 171, 171, 171, 395, 12, - 12, 12, 12, 704, 35, 35, 35, 12, 35, 169, - 169, 327, 251, 35, 42, 42, 35, 327, 42, 251, - 169, 36, 36, 703, 42, 48, 42, 456, 42, 12, + 12, 12, 41, 393, 35, 171, 171, 171, 393, 12, + 12, 12, 12, 693, 35, 35, 35, 12, 35, 169, + 169, 326, 251, 35, 42, 42, 35, 326, 42, 251, + 169, 36, 36, 692, 42, 48, 42, 453, 42, 12, 12, 12, 36, 42, 36, 48, 36, 48, 36, 48, - 456, 36, 392, 42, 48, 701, 516, 39, 39, 392, - 39, 393, 394, 516, 12, 12, 12, 21, 39, 39, - 39, 48, 39, 394, 457, 39, 393, 39, 457, 559, - 458, 21, 458, 559, 21, 21, 21, 21, 21, 21, + 453, 36, 390, 42, 48, 690, 512, 39, 39, 390, + 39, 391, 392, 512, 12, 12, 12, 21, 39, 39, + 39, 48, 39, 392, 454, 39, 391, 39, 454, 554, + 455, 21, 455, 554, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, - 562, 698, 21, 21, 21, 21, 21, 21, 21, 21, + 557, 688, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, - 21, 21, 21, 21, 21, 31, 514, 562, 31, 31, + 21, 21, 21, 21, 21, 31, 510, 557, 31, 31, - 31, 31, 31, 31, 31, 515, 695, 514, 515, 31, + 31, 31, 31, 31, 31, 511, 685, 510, 511, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 629, 629, 694, 31, 31, + 31, 31, 31, 31, 31, 622, 622, 684, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 37, 655, 513, 655, 691, 40, 40, 560, 560, 560, - 37, 561, 37, 40, 37, 597, 40, 513, 40, 37, - 40, 689, 597, 685, 680, 40, 561, 43, 43, 599, - 43, 678, 37, 599, 677, 676, 44, 675, 43, 44, - - 43, 672, 43, 37, 43, 560, 44, 43, 44, 45, - 44, 670, 45, 669, 664, 44, 45, 663, 46, 45, - 662, 45, 658, 45, 46, 46, 654, 45, 45, 653, - 652, 43, 45, 47, 651, 46, 648, 46, 646, 46, - 645, 46, 643, 47, 46, 47, 49, 47, 46, 640, - 639, 47, 47, 49, 638, 632, 49, 46, 49, 628, - 49, 631, 631, 631, 627, 49, 50, 50, 50, 50, - 50, 50, 50, 47, 89, 89, 89, 50, 626, 624, - 89, 97, 621, 619, 618, 616, 89, 89, 612, 611, - 610, 97, 50, 97, 600, 97, 596, 50, 74, 631, - - 97, 595, 74, 74, 74, 74, 74, 74, 74, 74, + 37, 647, 509, 647, 681, 40, 40, 555, 555, 555, + 37, 556, 37, 40, 37, 591, 40, 509, 40, 37, + 40, 679, 591, 675, 671, 40, 556, 43, 43, 593, + 43, 669, 37, 593, 668, 667, 44, 666, 43, 44, + + 43, 663, 43, 37, 43, 555, 44, 43, 44, 45, + 44, 661, 45, 660, 655, 44, 45, 654, 46, 45, + 653, 45, 650, 45, 46, 46, 646, 45, 45, 645, + 644, 43, 45, 47, 643, 46, 640, 46, 638, 46, + 637, 46, 635, 47, 46, 47, 49, 47, 46, 632, + 631, 47, 47, 49, 630, 625, 49, 46, 49, 621, + 49, 624, 624, 624, 620, 49, 50, 50, 50, 50, + 50, 50, 50, 47, 89, 89, 89, 50, 619, 617, + 89, 97, 614, 612, 611, 609, 89, 89, 605, 604, + 603, 97, 50, 97, 594, 97, 590, 50, 74, 624, + + 97, 589, 74, 74, 74, 74, 74, 74, 74, 74, 74, 95, 95, 95, 95, 95, 95, 95, 74, 74, 74, 74, 98, 99, 178, 178, 178, 178, 178, 178, - 178, 594, 98, 99, 98, 99, 98, 99, 593, 98, - 591, 98, 99, 100, 101, 587, 585, 584, 74, 74, - 74, 582, 577, 100, 101, 100, 101, 100, 101, 102, - 576, 575, 100, 101, 558, 557, 100, 556, 555, 102, - 553, 102, 551, 102, 74, 75, 548, 102, 102, 75, - 75, 75, 75, 75, 75, 75, 75, 75, 546, 104, - 544, 542, 105, 535, 104, 75, 75, 75, 75, 104, - - 534, 104, 105, 104, 105, 106, 105, 533, 104, 532, - 105, 105, 75, 520, 512, 106, 511, 106, 107, 106, - 510, 509, 506, 504, 106, 75, 75, 75, 107, 108, - 107, 107, 107, 679, 679, 679, 501, 107, 496, 108, - 494, 108, 482, 108, 109, 109, 481, 463, 108, 459, - 455, 75, 110, 110, 454, 109, 453, 109, 109, 109, - 452, 451, 448, 110, 109, 110, 111, 110, 446, 112, - 441, 679, 110, 112, 436, 433, 111, 111, 111, 112, - 111, 112, 113, 112, 421, 111, 420, 419, 112, 400, - 390, 389, 113, 388, 113, 386, 113, 114, 114, 114, - - 116, 113, 382, 115, 115, 380, 375, 114, 370, 114, + 178, 588, 98, 99, 98, 99, 98, 99, 587, 98, + 585, 98, 99, 100, 101, 581, 579, 578, 74, 74, + 74, 576, 571, 100, 101, 100, 101, 100, 101, 102, + 570, 569, 100, 101, 553, 552, 100, 551, 550, 102, + 548, 102, 546, 102, 74, 75, 543, 102, 102, 75, + 75, 75, 75, 75, 75, 75, 75, 75, 541, 104, + 539, 537, 105, 530, 104, 75, 75, 75, 75, 104, + + 529, 104, 105, 104, 105, 106, 105, 528, 104, 527, + 105, 105, 75, 515, 508, 106, 507, 106, 107, 106, + 506, 505, 502, 500, 106, 75, 75, 75, 107, 108, + 107, 107, 107, 670, 670, 670, 497, 107, 492, 108, + 490, 108, 478, 108, 109, 109, 477, 459, 108, 456, + 452, 75, 110, 110, 451, 109, 450, 109, 109, 109, + 449, 448, 445, 110, 109, 110, 111, 110, 443, 112, + 438, 670, 110, 112, 433, 430, 111, 111, 111, 112, + 111, 112, 113, 112, 418, 111, 417, 416, 112, 397, + 388, 387, 113, 386, 113, 384, 113, 114, 114, 114, + + 116, 113, 380, 115, 115, 378, 373, 114, 368, 114, 116, 114, 116, 115, 116, 115, 114, 115, 117, 116, - 366, 115, 115, 355, 354, 120, 353, 334, 117, 322, - 117, 117, 117, 120, 321, 320, 121, 117, 314, 121, - 303, 298, 294, 120, 122, 120, 121, 120, 121, 283, - 121, 282, 120, 255, 122, 121, 122, 254, 122, 123, + 364, 115, 115, 353, 352, 120, 351, 332, 117, 321, + 117, 117, 117, 120, 320, 319, 121, 117, 313, 121, + 302, 297, 293, 120, 122, 120, 121, 120, 121, 282, + 121, 281, 120, 255, 122, 121, 122, 254, 122, 123, 123, 249, 245, 122, 244, 243, 239, 227, 221, 123, 124, 123, 217, 123, 206, 205, 123, 123, 123, 177, 124, 125, 124, 124, 124, 173, 168, 126, 166, 124, @@ -1388,407 +1373,397 @@ static yyconst short int yy_chk[4563] = 153, 0, 153, 155, 155, 155, 153, 153, 154, 154, 154, 154, 154, 154, 154, 155, 155, 155, 155, 155, - 155, 155, 0, 0, 181, 182, 0, 181, 0, 0, - 0, 0, 0, 0, 181, 182, 181, 182, 181, 182, - 183, 155, 181, 181, 182, 0, 154, 0, 184, 0, - 183, 185, 183, 0, 183, 0, 0, 0, 184, 183, - 184, 185, 184, 185, 185, 185, 186, 184, 0, 187, - 185, 0, 188, 186, 0, 0, 186, 0, 186, 187, - 186, 187, 188, 187, 188, 186, 188, 189, 187, 188, - 0, 188, 0, 190, 0, 0, 0, 189, 0, 189, - - 0, 189, 0, 190, 191, 190, 189, 190, 0, 190, - 192, 191, 190, 0, 191, 0, 191, 0, 191, 0, - 192, 193, 192, 191, 192, 0, 0, 192, 0, 192, - 0, 193, 194, 193, 0, 193, 0, 0, 0, 0, - 193, 0, 194, 0, 194, 0, 194, 195, 195, 194, - 194, 194, 0, 0, 196, 195, 0, 196, 195, 0, - 195, 0, 195, 0, 196, 197, 196, 195, 196, 0, - 0, 198, 0, 196, 0, 197, 0, 197, 197, 197, - 0, 198, 199, 198, 197, 198, 0, 0, 200, 0, - 198, 200, 199, 199, 199, 0, 199, 0, 200, 201, - - 200, 199, 200, 0, 0, 202, 0, 200, 202, 201, - 0, 201, 201, 201, 0, 202, 203, 202, 201, 202, - 0, 0, 0, 0, 202, 0, 203, 204, 203, 0, - 203, 0, 0, 203, 0, 203, 0, 204, 204, 204, - 207, 204, 0, 0, 0, 0, 204, 0, 208, 0, - 207, 209, 207, 0, 207, 0, 0, 207, 208, 207, - 208, 209, 208, 209, 209, 209, 210, 208, 0, 211, - 209, 0, 212, 0, 0, 212, 210, 0, 210, 211, - 210, 211, 212, 211, 212, 210, 212, 211, 211, 213, - 214, 212, 0, 215, 0, 0, 213, 0, 0, 0, - - 214, 0, 214, 215, 214, 215, 213, 215, 213, 214, - 213, 216, 215, 0, 218, 213, 0, 218, 0, 0, - 0, 216, 0, 216, 218, 216, 218, 0, 218, 219, - 216, 0, 219, 218, 0, 220, 0, 0, 0, 219, - 0, 219, 220, 219, 0, 220, 222, 220, 219, 220, - 0, 0, 0, 0, 220, 0, 222, 223, 222, 0, - 222, 0, 0, 224, 222, 222, 0, 223, 0, 223, - 0, 223, 0, 224, 225, 224, 223, 224, 0, 0, - 224, 0, 224, 0, 225, 226, 225, 0, 225, 0, - 0, 225, 0, 225, 0, 226, 228, 226, 0, 226, - - 0, 229, 229, 0, 226, 226, 228, 0, 228, 0, - 228, 0, 229, 230, 229, 228, 229, 0, 0, 231, - 0, 229, 0, 230, 0, 230, 0, 230, 0, 231, - 0, 231, 230, 231, 232, 233, 0, 232, 231, 0, - 0, 0, 233, 0, 232, 233, 232, 233, 232, 233, - 234, 0, 0, 232, 233, 0, 0, 0, 0, 0, - 234, 235, 234, 0, 234, 0, 0, 236, 234, 234, - 0, 235, 0, 235, 0, 235, 0, 236, 235, 236, - 235, 236, 237, 0, 236, 237, 236, 0, 238, 0, - 0, 238, 237, 0, 237, 0, 237, 0, 238, 240, - - 238, 237, 238, 0, 0, 0, 0, 238, 0, 240, - 241, 240, 240, 240, 240, 242, 0, 0, 240, 240, - 241, 242, 241, 0, 241, 0, 0, 0, 241, 241, - 0, 242, 246, 242, 0, 242, 0, 0, 246, 0, - 242, 0, 246, 0, 246, 0, 246, 248, 248, 248, - 0, 246, 0, 0, 0, 0, 258, 259, 0, 248, - 248, 248, 248, 248, 248, 248, 258, 259, 258, 259, - 258, 259, 260, 259, 0, 258, 259, 0, 261, 260, - 0, 0, 260, 0, 260, 0, 260, 0, 261, 261, - 261, 260, 261, 262, 263, 0, 0, 261, 0, 0, - - 0, 0, 0, 262, 263, 262, 263, 262, 263, 265, - 265, 264, 262, 263, 264, 0, 0, 0, 0, 0, - 265, 264, 265, 264, 265, 264, 266, 266, 0, 265, - 264, 0, 267, 0, 0, 0, 266, 0, 266, 263, - 266, 0, 267, 268, 267, 266, 267, 0, 0, 267, - 0, 267, 0, 268, 269, 268, 268, 268, 0, 0, - 0, 0, 268, 0, 269, 0, 269, 0, 269, 271, - 269, 270, 270, 269, 0, 272, 0, 0, 0, 271, - 0, 271, 270, 271, 270, 272, 270, 272, 271, 272, - 273, 270, 273, 274, 272, 274, 275, 0, 0, 275, - - 273, 0, 273, 274, 273, 274, 275, 274, 275, 273, - 275, 276, 274, 0, 0, 275, 0, 277, 0, 0, - 0, 276, 0, 276, 277, 276, 0, 277, 278, 277, - 276, 277, 0, 0, 0, 0, 277, 0, 278, 279, - 278, 0, 278, 0, 278, 0, 0, 278, 0, 279, - 0, 279, 0, 279, 280, 279, 0, 280, 279, 0, - 281, 0, 0, 0, 280, 0, 280, 0, 280, 0, - 281, 284, 281, 280, 281, 0, 0, 285, 0, 281, - 0, 284, 0, 284, 0, 284, 0, 285, 0, 285, - 284, 285, 286, 287, 0, 285, 285, 0, 0, 286, - - 0, 0, 286, 287, 286, 287, 286, 287, 288, 287, - 0, 286, 287, 289, 289, 0, 284, 0, 288, 0, - 288, 0, 288, 291, 289, 0, 289, 288, 289, 290, - 289, 0, 291, 289, 290, 0, 0, 0, 0, 290, - 292, 290, 291, 290, 291, 290, 291, 0, 290, 0, - 292, 291, 292, 293, 292, 0, 0, 292, 0, 292, - 0, 295, 295, 293, 296, 293, 0, 293, 0, 0, - 0, 295, 293, 295, 296, 295, 296, 297, 296, 0, - 295, 0, 296, 296, 0, 299, 300, 297, 299, 297, - 297, 297, 0, 0, 0, 299, 297, 299, 0, 299, - - 301, 300, 0, 301, 299, 0, 0, 0, 0, 0, - 301, 300, 301, 300, 301, 300, 302, 302, 304, 301, - 300, 0, 0, 0, 0, 0, 0, 302, 304, 302, - 304, 302, 304, 305, 0, 0, 302, 304, 0, 0, - 0, 0, 0, 305, 0, 305, 306, 305, 0, 306, - 0, 305, 305, 0, 307, 0, 306, 308, 306, 0, - 306, 0, 0, 0, 307, 306, 307, 308, 307, 308, - 0, 308, 310, 307, 309, 309, 308, 0, 311, 0, - 0, 313, 310, 0, 310, 309, 310, 309, 311, 309, - 311, 310, 311, 312, 309, 0, 313, 311, 0, 315, - - 0, 0, 0, 312, 0, 312, 313, 312, 313, 315, - 313, 315, 312, 315, 316, 313, 0, 310, 315, 0, - 317, 0, 0, 317, 316, 0, 316, 0, 316, 0, - 317, 318, 317, 316, 317, 0, 0, 319, 0, 317, - 0, 318, 0, 318, 0, 318, 0, 319, 0, 319, - 318, 319, 323, 0, 319, 0, 319, 0, 0, 0, - 0, 0, 323, 0, 323, 0, 323, 318, 0, 329, - 0, 323, 324, 324, 324, 324, 324, 324, 324, 329, - 0, 329, 0, 329, 330, 330, 0, 329, 329, 0, - 0, 0, 0, 331, 331, 330, 0, 330, 0, 330, - - 332, 332, 0, 331, 330, 331, 0, 331, 0, 333, - 324, 332, 331, 332, 0, 332, 335, 335, 0, 333, - 332, 333, 0, 333, 0, 336, 336, 335, 333, 335, - 0, 335, 0, 0, 0, 336, 335, 336, 337, 336, - 0, 337, 0, 0, 336, 0, 338, 0, 337, 339, - 337, 0, 337, 0, 0, 0, 338, 337, 338, 339, - 338, 339, 0, 339, 341, 338, 340, 340, 339, 0, - 342, 341, 0, 0, 341, 0, 341, 340, 341, 340, - 342, 340, 342, 341, 342, 343, 340, 0, 343, 342, - 0, 344, 343, 344, 0, 343, 0, 343, 0, 343, - - 0, 344, 0, 344, 343, 344, 345, 346, 0, 345, - 344, 0, 0, 345, 0, 0, 345, 346, 345, 346, - 345, 346, 347, 346, 0, 345, 346, 0, 0, 0, - 0, 0, 347, 0, 347, 0, 347, 348, 348, 0, - 347, 347, 0, 349, 0, 0, 0, 348, 0, 348, - 0, 348, 0, 349, 350, 349, 348, 349, 0, 0, - 351, 349, 349, 0, 350, 0, 350, 0, 350, 0, - 351, 350, 351, 350, 351, 352, 356, 0, 0, 351, - 0, 0, 0, 356, 0, 352, 356, 352, 356, 352, - 356, 0, 0, 358, 352, 356, 357, 357, 0, 357, - - 0, 0, 0, 358, 0, 358, 357, 358, 357, 0, - 357, 358, 358, 360, 359, 357, 359, 0, 0, 0, - 0, 0, 0, 360, 359, 360, 359, 360, 359, 361, - 0, 0, 360, 359, 0, 362, 0, 0, 362, 361, - 0, 361, 0, 361, 0, 362, 363, 362, 361, 362, - 364, 0, 0, 365, 362, 0, 363, 364, 363, 0, - 363, 0, 0, 363, 0, 363, 0, 364, 365, 364, - 0, 364, 0, 0, 367, 0, 364, 0, 365, 0, - 365, 0, 365, 0, 367, 368, 367, 365, 367, 0, - 0, 369, 367, 367, 0, 368, 0, 368, 0, 368, - - 0, 369, 371, 369, 368, 369, 0, 0, 0, 0, - 369, 0, 371, 372, 371, 0, 371, 0, 371, 373, - 372, 371, 0, 372, 0, 372, 0, 372, 0, 373, - 374, 373, 372, 373, 0, 0, 0, 0, 373, 0, - 374, 0, 374, 376, 374, 0, 377, 0, 374, 374, - 376, 0, 0, 376, 378, 376, 377, 376, 377, 378, - 377, 0, 376, 0, 378, 377, 378, 379, 378, 0, - 0, 0, 0, 378, 0, 0, 0, 379, 381, 379, - 0, 379, 0, 0, 383, 381, 379, 0, 381, 379, - 381, 0, 381, 0, 383, 0, 383, 381, 383, 384, - - 385, 0, 384, 383, 0, 0, 0, 0, 0, 384, - 385, 384, 385, 384, 385, 387, 385, 0, 384, 385, - 0, 396, 0, 0, 0, 387, 0, 387, 0, 387, - 0, 396, 0, 396, 387, 396, 397, 397, 398, 398, - 396, 0, 0, 0, 0, 0, 397, 399, 397, 398, - 397, 398, 0, 398, 0, 397, 0, 399, 398, 399, - 387, 399, 401, 0, 0, 399, 399, 0, 402, 0, - 0, 0, 401, 0, 401, 0, 401, 0, 402, 403, - 402, 401, 402, 0, 0, 404, 402, 402, 404, 403, - 0, 403, 0, 403, 0, 404, 405, 404, 403, 404, - - 0, 0, 406, 405, 404, 0, 405, 0, 405, 0, - 405, 0, 406, 407, 406, 405, 406, 0, 0, 0, - 0, 406, 0, 407, 408, 407, 408, 407, 0, 0, - 409, 407, 407, 0, 408, 0, 408, 0, 408, 0, - 409, 0, 409, 408, 409, 0, 0, 410, 409, 409, - 410, 0, 0, 411, 0, 411, 0, 410, 0, 410, - 0, 410, 0, 411, 412, 411, 410, 411, 0, 413, - 413, 0, 411, 0, 412, 0, 412, 0, 412, 0, - 413, 414, 413, 412, 413, 0, 0, 415, 0, 413, - 0, 414, 0, 414, 415, 414, 0, 415, 416, 415, - - 414, 415, 0, 0, 417, 0, 415, 0, 416, 0, - 416, 417, 416, 0, 417, 416, 417, 416, 417, 418, - 418, 422, 0, 417, 0, 422, 0, 0, 0, 0, - 418, 422, 418, 422, 418, 422, 423, 0, 0, 418, - 422, 0, 424, 423, 424, 0, 423, 0, 423, 0, - 423, 0, 424, 425, 424, 423, 424, 0, 0, 426, - 0, 424, 426, 425, 0, 425, 0, 425, 0, 426, - 425, 426, 425, 426, 427, 427, 0, 0, 426, 0, - 428, 428, 0, 0, 427, 0, 427, 0, 427, 0, - 428, 429, 428, 427, 428, 0, 0, 0, 0, 428, - - 0, 429, 0, 429, 0, 429, 430, 429, 0, 430, - 429, 0, 431, 0, 0, 0, 430, 0, 430, 0, - 430, 0, 431, 432, 431, 430, 431, 0, 0, 431, - 432, 431, 0, 432, 434, 432, 0, 432, 0, 435, - 435, 0, 432, 0, 434, 0, 434, 0, 434, 0, - 435, 437, 435, 434, 435, 0, 0, 438, 0, 435, - 0, 437, 0, 437, 0, 437, 0, 438, 439, 438, - 437, 438, 0, 0, 0, 0, 438, 0, 439, 0, - 439, 440, 439, 0, 440, 0, 439, 439, 0, 442, - 0, 440, 0, 440, 0, 440, 0, 0, 0, 442, - - 440, 442, 0, 442, 443, 443, 0, 444, 442, 442, - 445, 0, 0, 0, 443, 0, 443, 444, 443, 444, - 445, 444, 445, 443, 445, 447, 444, 447, 449, 445, - 0, 450, 0, 0, 0, 447, 0, 447, 449, 447, - 449, 450, 449, 450, 447, 450, 460, 449, 450, 461, - 450, 0, 0, 0, 0, 0, 460, 0, 460, 461, - 460, 461, 462, 461, 460, 460, 0, 461, 461, 462, - 464, 0, 462, 0, 462, 0, 462, 0, 0, 0, - 464, 462, 464, 465, 464, 0, 465, 0, 0, 464, - 0, 466, 0, 465, 467, 465, 0, 465, 0, 0, - - 0, 466, 465, 466, 467, 466, 467, 468, 467, 0, - 466, 0, 0, 467, 468, 469, 0, 468, 470, 468, - 0, 468, 0, 0, 0, 469, 468, 469, 470, 469, - 470, 471, 470, 0, 469, 0, 0, 470, 471, 473, - 0, 471, 472, 471, 472, 471, 0, 0, 0, 473, - 471, 473, 472, 473, 472, 474, 472, 0, 473, 0, - 474, 472, 0, 475, 0, 474, 476, 474, 0, 474, - 0, 0, 0, 475, 474, 475, 476, 475, 476, 477, - 476, 475, 475, 0, 476, 476, 0, 478, 0, 477, - 479, 477, 0, 477, 0, 0, 0, 478, 477, 478, - - 479, 478, 479, 483, 479, 0, 478, 0, 0, 479, - 483, 484, 0, 483, 485, 483, 0, 483, 0, 0, - 0, 484, 483, 484, 485, 484, 485, 486, 485, 484, - 484, 0, 0, 485, 0, 487, 0, 486, 0, 486, - 0, 486, 0, 0, 0, 487, 486, 487, 488, 487, - 0, 488, 487, 0, 487, 0, 489, 0, 488, 490, - 488, 0, 488, 0, 0, 0, 489, 488, 489, 490, - 489, 490, 0, 490, 489, 489, 491, 491, 490, 492, - 0, 0, 493, 0, 0, 0, 491, 0, 491, 492, - 491, 492, 493, 492, 493, 491, 493, 495, 492, 0, - - 497, 493, 0, 0, 0, 0, 0, 495, 0, 495, - 497, 495, 497, 498, 497, 0, 495, 498, 0, 497, - 0, 499, 0, 498, 492, 498, 0, 498, 0, 500, - 0, 499, 498, 499, 0, 499, 0, 0, 0, 500, - 499, 500, 502, 500, 0, 502, 0, 0, 500, 0, - 503, 0, 502, 503, 502, 0, 502, 0, 0, 517, - 503, 502, 503, 505, 503, 0, 505, 0, 0, 503, - 507, 507, 0, 505, 517, 505, 0, 505, 0, 0, - 0, 507, 505, 507, 517, 507, 517, 518, 517, 0, - 507, 0, 0, 517, 518, 519, 519, 518, 0, 518, - - 0, 518, 0, 521, 0, 519, 518, 519, 0, 519, - 0, 522, 0, 521, 519, 521, 0, 521, 0, 521, - 0, 522, 521, 522, 523, 522, 0, 523, 0, 522, - 522, 0, 524, 0, 523, 525, 523, 0, 523, 0, - 0, 527, 524, 523, 524, 525, 524, 525, 525, 525, - 526, 524, 0, 529, 525, 0, 527, 0, 0, 0, - 526, 0, 526, 529, 526, 529, 527, 529, 527, 526, - 527, 528, 529, 0, 528, 527, 0, 530, 0, 0, - 0, 528, 0, 528, 530, 528, 0, 530, 531, 530, - 528, 530, 0, 0, 536, 0, 530, 536, 531, 0, - - 531, 0, 531, 0, 536, 537, 536, 531, 536, 0, - 0, 538, 0, 536, 0, 537, 0, 537, 0, 537, - 0, 538, 539, 538, 537, 538, 0, 0, 540, 0, - 538, 0, 539, 0, 539, 540, 539, 0, 540, 541, - 540, 539, 540, 0, 0, 0, 0, 540, 0, 541, - 543, 541, 0, 541, 543, 0, 545, 541, 541, 0, - 543, 0, 543, 549, 543, 0, 545, 547, 545, 543, - 545, 0, 0, 0, 547, 545, 0, 547, 549, 547, - 0, 547, 0, 0, 550, 0, 547, 0, 549, 0, - 549, 0, 549, 0, 550, 552, 550, 549, 550, 0, - - 0, 554, 0, 550, 0, 552, 0, 552, 0, 552, - 0, 554, 563, 554, 552, 554, 0, 0, 0, 0, - 554, 0, 563, 564, 563, 0, 563, 0, 0, 563, - 0, 563, 0, 564, 565, 564, 564, 564, 0, 0, - 567, 0, 564, 0, 565, 0, 565, 0, 565, 0, - 567, 568, 567, 565, 567, 0, 0, 0, 0, 567, - 0, 568, 569, 568, 569, 568, 0, 0, 568, 0, - 568, 0, 569, 570, 569, 0, 569, 0, 570, 571, - 0, 569, 0, 570, 0, 570, 0, 570, 0, 571, - 0, 571, 570, 571, 572, 572, 0, 573, 571, 573, - - 574, 0, 0, 0, 572, 0, 572, 573, 572, 573, - 574, 573, 574, 572, 574, 579, 573, 0, 0, 574, - 0, 0, 0, 580, 0, 579, 0, 579, 0, 579, - 0, 579, 0, 580, 579, 580, 580, 580, 581, 583, - 0, 0, 580, 0, 0, 581, 583, 0, 581, 583, - 581, 583, 581, 583, 586, 0, 0, 581, 583, 0, - 0, 0, 588, 0, 586, 0, 586, 0, 586, 0, - 590, 0, 588, 586, 588, 588, 588, 0, 0, 0, - 590, 588, 590, 592, 590, 0, 0, 0, 590, 590, - 0, 0, 0, 592, 0, 592, 0, 592, 598, 598, - - 598, 0, 592, 0, 0, 0, 0, 601, 602, 0, - 598, 598, 598, 598, 598, 598, 598, 601, 602, 601, - 602, 601, 602, 603, 604, 0, 601, 602, 0, 0, - 601, 0, 0, 603, 604, 603, 604, 603, 604, 605, - 606, 0, 603, 604, 0, 0, 0, 0, 0, 605, - 606, 605, 606, 605, 606, 607, 0, 606, 605, 606, - 0, 608, 0, 0, 0, 607, 0, 607, 607, 607, - 0, 608, 609, 608, 607, 608, 0, 0, 613, 609, - 608, 0, 609, 0, 609, 0, 609, 0, 613, 614, - 613, 609, 613, 0, 0, 0, 0, 613, 0, 614, - - 615, 614, 0, 614, 0, 0, 617, 0, 614, 0, - 615, 0, 615, 615, 615, 0, 617, 620, 617, 615, - 617, 0, 0, 622, 620, 617, 0, 620, 0, 620, - 622, 620, 0, 622, 623, 622, 620, 622, 0, 0, - 0, 623, 622, 0, 623, 0, 623, 0, 623, 0, - 0, 633, 634, 623, 630, 630, 630, 630, 630, 630, - 630, 633, 634, 633, 634, 633, 634, 635, 636, 0, - 633, 634, 0, 0, 0, 0, 0, 635, 636, 635, - 636, 635, 636, 637, 0, 0, 635, 636, 0, 0, - 0, 0, 630, 637, 641, 637, 0, 637, 0, 0, - - 642, 637, 637, 0, 641, 0, 641, 0, 641, 0, - 642, 641, 642, 641, 642, 644, 0, 0, 647, 642, - 0, 649, 644, 649, 0, 644, 0, 644, 647, 644, - 647, 649, 647, 649, 644, 649, 647, 647, 650, 0, - 649, 0, 650, 0, 0, 0, 0, 0, 650, 0, - 650, 0, 650, 657, 657, 657, 0, 650, 0, 0, - 0, 0, 659, 0, 0, 657, 657, 657, 657, 657, - 657, 657, 659, 660, 659, 0, 659, 0, 0, 0, - 659, 659, 0, 660, 661, 660, 0, 660, 0, 0, - 665, 660, 660, 0, 661, 0, 661, 0, 661, 0, - - 665, 666, 665, 661, 665, 0, 0, 661, 0, 665, - 0, 666, 668, 666, 0, 666, 0, 0, 0, 0, - 666, 0, 668, 671, 668, 0, 668, 0, 0, 673, - 668, 668, 0, 671, 0, 671, 0, 671, 0, 673, - 674, 673, 671, 673, 0, 0, 671, 674, 673, 0, - 674, 0, 674, 682, 674, 681, 681, 0, 0, 674, - 0, 0, 0, 682, 683, 682, 681, 682, 681, 682, - 681, 0, 682, 0, 683, 681, 683, 687, 683, 0, - 690, 0, 0, 683, 0, 0, 0, 687, 0, 687, - 690, 687, 690, 0, 690, 692, 687, 0, 692, 690, - - 687, 0, 0, 0, 0, 692, 0, 692, 0, 692, - 697, 697, 697, 0, 692, 0, 0, 0, 0, 699, - 0, 0, 697, 697, 697, 697, 697, 697, 697, 699, - 700, 699, 0, 699, 0, 0, 702, 0, 699, 0, - 700, 699, 700, 700, 700, 0, 702, 705, 702, 700, - 702, 0, 0, 0, 0, 702, 0, 705, 709, 705, - 0, 705, 0, 705, 710, 0, 705, 0, 709, 0, - 709, 0, 709, 0, 710, 714, 710, 709, 710, 0, - 0, 717, 0, 710, 0, 714, 0, 714, 0, 714, - 0, 717, 0, 717, 714, 717, 0, 0, 0, 0, - - 717, 721, 721, 721, 721, 721, 721, 721, 721, 721, - 721, 721, 721, 722, 722, 722, 722, 722, 722, 722, - 722, 722, 722, 722, 722, 723, 723, 723, 723, 723, - 723, 723, 723, 723, 723, 723, 723, 724, 724, 724, - 724, 724, 724, 724, 724, 724, 724, 724, 724, 725, - 725, 725, 725, 725, 725, 725, 725, 725, 725, 725, - 725, 726, 726, 726, 726, 726, 726, 726, 726, 726, - 726, 726, 726, 727, 727, 727, 0, 727, 727, 727, - 727, 727, 727, 727, 727, 728, 728, 0, 0, 728, - 0, 728, 729, 0, 729, 730, 730, 0, 730, 730, - - 731, 731, 0, 731, 731, 731, 0, 731, 731, 731, - 731, 731, 732, 732, 732, 0, 732, 732, 732, 732, - 732, 732, 732, 732, 733, 733, 733, 733, 733, 733, - 733, 733, 0, 733, 733, 734, 0, 0, 734, 734, - 734, 734, 734, 734, 734, 734, 735, 0, 0, 735, - 735, 735, 735, 735, 735, 735, 735, 736, 0, 0, - 736, 0, 736, 736, 736, 736, 736, 736, 737, 737, - 0, 737, 737, 738, 738, 0, 738, 738, 739, 739, - 0, 739, 739, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720, 720, 720, 720, 720, 720, 720, 720, 720, - 720, 720 + 155, 155, 0, 181, 182, 0, 181, 0, 0, 0, + 0, 0, 0, 181, 182, 181, 182, 181, 182, 183, + 184, 155, 181, 182, 0, 0, 154, 0, 0, 183, + 184, 183, 184, 183, 184, 185, 0, 0, 183, 184, + 0, 0, 0, 186, 0, 185, 187, 185, 185, 185, + 186, 0, 0, 186, 185, 186, 187, 186, 187, 188, + 187, 0, 186, 0, 0, 187, 0, 189, 0, 188, + 0, 188, 0, 188, 0, 190, 188, 189, 188, 189, + + 0, 189, 0, 191, 0, 190, 189, 190, 0, 190, + 191, 190, 0, 191, 190, 191, 192, 191, 0, 0, + 0, 0, 191, 0, 193, 0, 192, 194, 192, 0, + 192, 0, 0, 192, 193, 192, 193, 194, 193, 194, + 0, 194, 0, 193, 194, 194, 194, 195, 195, 196, + 0, 0, 196, 0, 0, 195, 0, 0, 195, 196, + 195, 196, 195, 196, 197, 0, 0, 195, 196, 0, + 198, 0, 0, 0, 197, 0, 197, 197, 197, 0, + 198, 199, 198, 197, 198, 0, 0, 200, 0, 198, + 200, 199, 199, 199, 0, 199, 0, 200, 201, 200, + + 199, 200, 0, 0, 202, 0, 200, 202, 201, 0, + 201, 201, 201, 0, 202, 203, 202, 201, 202, 0, + 0, 0, 0, 202, 0, 203, 204, 203, 0, 203, + 0, 0, 203, 0, 203, 0, 204, 204, 204, 207, + 204, 0, 0, 0, 0, 204, 0, 208, 0, 207, + 209, 207, 0, 207, 0, 0, 207, 208, 207, 208, + 209, 208, 209, 209, 209, 210, 208, 0, 211, 209, + 0, 212, 0, 0, 212, 210, 0, 210, 211, 210, + 211, 212, 211, 212, 210, 212, 211, 211, 213, 214, + 212, 0, 215, 0, 0, 213, 0, 0, 0, 214, + + 0, 214, 215, 214, 215, 213, 215, 213, 214, 213, + 216, 215, 0, 218, 213, 0, 218, 0, 0, 0, + 216, 0, 216, 218, 216, 218, 0, 218, 219, 216, + 0, 219, 218, 0, 220, 0, 0, 0, 219, 0, + 219, 220, 219, 0, 220, 222, 220, 219, 220, 0, + 0, 0, 0, 220, 0, 222, 223, 222, 0, 222, + 0, 0, 224, 222, 222, 0, 223, 0, 223, 0, + 223, 0, 224, 225, 224, 223, 224, 0, 0, 224, + 0, 224, 0, 225, 226, 225, 0, 225, 0, 0, + 225, 0, 225, 0, 226, 228, 226, 0, 226, 0, + + 229, 229, 0, 226, 226, 228, 0, 228, 0, 228, + 0, 229, 230, 229, 228, 229, 0, 0, 231, 0, + 229, 0, 230, 0, 230, 0, 230, 0, 231, 0, + 231, 230, 231, 232, 233, 0, 232, 231, 0, 0, + 0, 233, 0, 232, 233, 232, 233, 232, 233, 234, + 0, 0, 232, 233, 0, 0, 0, 0, 0, 234, + 235, 234, 0, 234, 0, 0, 236, 234, 234, 0, + 235, 0, 235, 0, 235, 0, 236, 235, 236, 235, + 236, 237, 0, 236, 237, 236, 0, 238, 0, 0, + 238, 237, 0, 237, 0, 237, 0, 238, 240, 238, + + 237, 238, 0, 0, 0, 0, 238, 0, 240, 241, + 240, 240, 240, 240, 242, 0, 0, 240, 240, 241, + 242, 241, 0, 241, 0, 0, 0, 241, 241, 0, + 242, 246, 242, 0, 242, 0, 0, 246, 0, 242, + 0, 246, 0, 246, 0, 246, 248, 248, 248, 0, + 246, 0, 0, 0, 0, 258, 0, 0, 248, 248, + 248, 248, 248, 248, 248, 258, 259, 258, 0, 258, + 0, 0, 260, 259, 258, 0, 259, 0, 259, 0, + 259, 0, 260, 260, 260, 259, 260, 261, 262, 0, + 0, 260, 0, 0, 0, 0, 0, 261, 262, 261, + + 262, 261, 262, 264, 264, 263, 261, 262, 263, 0, + 0, 0, 0, 0, 264, 263, 264, 263, 264, 263, + 265, 265, 0, 264, 263, 0, 266, 0, 0, 0, + 265, 0, 265, 262, 265, 0, 266, 267, 266, 265, + 266, 0, 0, 266, 0, 266, 0, 267, 268, 267, + 267, 267, 0, 0, 0, 0, 267, 0, 268, 0, + 268, 0, 268, 270, 268, 269, 269, 268, 0, 271, + 0, 0, 0, 270, 0, 270, 269, 270, 269, 271, + 269, 271, 270, 271, 272, 269, 272, 273, 271, 273, + 274, 0, 0, 274, 272, 0, 272, 273, 272, 273, + + 274, 273, 274, 272, 274, 275, 273, 0, 0, 274, + 0, 276, 0, 0, 0, 275, 0, 275, 276, 275, + 0, 276, 277, 276, 275, 276, 0, 0, 0, 0, + 276, 0, 277, 278, 277, 0, 277, 0, 277, 0, + 0, 277, 0, 278, 0, 278, 0, 278, 279, 278, + 0, 279, 278, 0, 280, 0, 0, 0, 279, 0, + 279, 0, 279, 0, 280, 283, 280, 279, 280, 0, + 0, 284, 0, 280, 0, 283, 0, 283, 0, 283, + 0, 284, 0, 284, 283, 284, 285, 286, 0, 284, + 284, 0, 0, 285, 0, 0, 285, 286, 285, 286, + + 285, 286, 287, 286, 0, 285, 286, 288, 288, 0, + 283, 0, 287, 0, 287, 0, 287, 290, 288, 0, + 288, 287, 288, 289, 288, 0, 290, 288, 289, 0, + 0, 0, 0, 289, 291, 289, 290, 289, 290, 289, + 290, 0, 289, 0, 291, 290, 291, 292, 291, 0, + 0, 291, 0, 291, 0, 294, 294, 292, 295, 292, + 0, 292, 0, 0, 0, 294, 292, 294, 295, 294, + 295, 296, 295, 0, 294, 0, 295, 295, 0, 298, + 299, 296, 298, 296, 296, 296, 0, 0, 0, 298, + 296, 298, 0, 298, 300, 299, 0, 300, 298, 0, + + 0, 0, 0, 0, 300, 299, 300, 299, 300, 299, + 301, 301, 303, 300, 299, 0, 0, 0, 0, 0, + 0, 301, 303, 301, 303, 301, 303, 304, 0, 0, + 301, 303, 0, 0, 0, 0, 0, 304, 0, 304, + 305, 304, 0, 305, 0, 304, 304, 0, 306, 0, + 305, 307, 305, 0, 305, 0, 0, 0, 306, 305, + 306, 307, 306, 307, 0, 307, 309, 306, 308, 308, + 307, 0, 310, 0, 0, 312, 309, 0, 309, 308, + 309, 308, 310, 308, 310, 309, 310, 311, 308, 0, + 312, 310, 0, 314, 0, 0, 0, 311, 0, 311, + + 312, 311, 312, 314, 312, 314, 311, 314, 315, 312, + 0, 309, 314, 0, 316, 0, 0, 316, 315, 0, + 315, 0, 315, 0, 316, 317, 316, 315, 316, 0, + 0, 318, 0, 316, 0, 317, 0, 317, 0, 317, + 0, 318, 0, 318, 317, 318, 322, 0, 318, 0, + 318, 0, 0, 0, 0, 0, 322, 0, 322, 0, + 322, 317, 0, 328, 0, 322, 323, 323, 323, 323, + 323, 323, 323, 328, 0, 328, 0, 328, 329, 329, + 0, 328, 328, 330, 330, 0, 0, 0, 329, 0, + 329, 0, 329, 0, 330, 331, 330, 329, 330, 0, + + 333, 333, 0, 330, 323, 331, 0, 331, 0, 331, + 0, 333, 0, 333, 331, 333, 334, 334, 0, 335, + 333, 0, 335, 0, 0, 0, 334, 336, 334, 335, + 334, 335, 0, 335, 0, 334, 0, 336, 335, 336, + 337, 336, 338, 338, 0, 0, 336, 0, 0, 0, + 337, 339, 337, 338, 337, 338, 0, 338, 339, 337, + 0, 339, 338, 339, 340, 339, 0, 0, 0, 0, + 339, 0, 341, 0, 340, 341, 340, 0, 340, 341, + 0, 0, 341, 340, 341, 342, 341, 342, 0, 0, + 0, 341, 0, 343, 0, 342, 343, 342, 0, 342, + + 343, 344, 0, 343, 342, 343, 0, 343, 0, 345, + 0, 344, 343, 344, 0, 344, 0, 344, 0, 345, + 344, 345, 0, 345, 346, 346, 0, 345, 345, 0, + 347, 0, 0, 0, 346, 0, 346, 0, 346, 0, + 347, 348, 347, 346, 347, 0, 0, 349, 347, 347, + 0, 348, 0, 348, 0, 348, 0, 349, 348, 349, + 348, 349, 350, 354, 0, 0, 349, 0, 0, 0, + 354, 0, 350, 354, 350, 354, 350, 354, 0, 0, + 356, 350, 354, 355, 355, 0, 355, 0, 0, 0, + 356, 0, 356, 355, 356, 355, 0, 355, 356, 356, + + 358, 357, 355, 357, 0, 0, 0, 0, 0, 0, + 358, 357, 358, 357, 358, 357, 359, 0, 0, 358, + 357, 0, 360, 0, 0, 360, 359, 0, 359, 0, + 359, 0, 360, 361, 360, 359, 360, 362, 0, 0, + 363, 360, 0, 361, 362, 361, 0, 361, 0, 0, + 361, 0, 361, 0, 362, 363, 362, 0, 362, 0, + 0, 365, 0, 362, 0, 363, 0, 363, 0, 363, + 0, 365, 366, 365, 363, 365, 0, 0, 367, 365, + 365, 0, 366, 0, 366, 0, 366, 0, 367, 369, + 367, 366, 367, 0, 0, 0, 0, 367, 0, 369, + + 370, 369, 0, 369, 0, 369, 371, 370, 369, 0, + 370, 0, 370, 0, 370, 0, 371, 372, 371, 370, + 371, 0, 0, 0, 0, 371, 0, 372, 0, 372, + 374, 372, 0, 375, 0, 372, 372, 374, 0, 0, + 374, 376, 374, 375, 374, 375, 376, 375, 0, 374, + 0, 376, 375, 376, 377, 376, 0, 0, 0, 0, + 376, 0, 0, 0, 377, 379, 377, 0, 377, 0, + 0, 381, 379, 377, 0, 379, 377, 379, 0, 379, + 0, 381, 0, 381, 379, 381, 382, 383, 0, 382, + 381, 0, 0, 0, 0, 0, 382, 383, 382, 383, + + 382, 383, 385, 383, 0, 382, 383, 0, 394, 0, + 0, 0, 385, 0, 385, 0, 385, 0, 394, 0, + 394, 385, 394, 395, 395, 0, 0, 394, 0, 0, + 396, 0, 0, 0, 395, 0, 395, 0, 395, 0, + 396, 398, 396, 395, 396, 0, 0, 385, 396, 396, + 0, 398, 399, 398, 0, 398, 0, 0, 0, 0, + 398, 0, 399, 400, 399, 0, 399, 0, 0, 401, + 399, 399, 401, 400, 0, 400, 0, 400, 0, 401, + 402, 401, 400, 401, 0, 0, 403, 402, 401, 0, + 402, 0, 402, 0, 402, 0, 403, 404, 403, 402, + + 403, 0, 0, 0, 0, 403, 0, 404, 405, 404, + 405, 404, 0, 0, 406, 404, 404, 0, 405, 0, + 405, 0, 405, 0, 406, 0, 406, 405, 406, 0, + 0, 407, 406, 406, 407, 0, 0, 408, 0, 408, + 0, 407, 0, 407, 0, 407, 0, 408, 409, 408, + 407, 408, 0, 410, 410, 0, 408, 0, 409, 0, + 409, 0, 409, 0, 410, 411, 410, 409, 410, 0, + 0, 412, 0, 410, 0, 411, 0, 411, 412, 411, + 0, 412, 413, 412, 411, 412, 0, 0, 414, 0, + 412, 0, 413, 0, 413, 414, 413, 0, 414, 413, + + 414, 413, 414, 415, 415, 419, 0, 414, 0, 419, + 0, 0, 0, 0, 415, 419, 415, 419, 415, 419, + 420, 0, 0, 415, 419, 0, 421, 420, 421, 0, + 420, 0, 420, 0, 420, 0, 421, 422, 421, 420, + 421, 0, 0, 423, 0, 421, 423, 422, 0, 422, + 0, 422, 0, 423, 422, 423, 422, 423, 424, 424, + 0, 0, 423, 0, 425, 425, 0, 0, 424, 0, + 424, 0, 424, 0, 425, 426, 425, 424, 425, 0, + 0, 0, 0, 425, 0, 426, 0, 426, 0, 426, + 427, 426, 0, 427, 426, 0, 428, 0, 0, 0, + + 427, 0, 427, 0, 427, 0, 428, 429, 428, 427, + 428, 0, 0, 428, 429, 428, 0, 429, 431, 429, + 0, 429, 0, 432, 432, 0, 429, 0, 431, 0, + 431, 0, 431, 0, 432, 434, 432, 431, 432, 0, + 0, 435, 0, 432, 0, 434, 0, 434, 0, 434, + 0, 435, 436, 435, 434, 435, 0, 0, 0, 0, + 435, 0, 436, 0, 436, 437, 436, 0, 437, 0, + 436, 436, 0, 439, 0, 437, 0, 437, 0, 437, + 0, 0, 0, 439, 437, 439, 0, 439, 440, 440, + 0, 441, 439, 439, 442, 0, 0, 0, 440, 0, + + 440, 441, 440, 441, 442, 441, 442, 440, 442, 444, + 441, 444, 446, 442, 0, 447, 0, 0, 0, 444, + 0, 444, 446, 444, 446, 447, 446, 447, 444, 447, + 457, 446, 447, 0, 447, 0, 0, 0, 0, 0, + 457, 0, 457, 458, 457, 0, 460, 0, 457, 457, + 458, 0, 0, 458, 0, 458, 460, 458, 460, 0, + 460, 461, 458, 0, 461, 460, 0, 462, 0, 0, + 0, 461, 0, 461, 0, 461, 0, 462, 463, 462, + 461, 462, 0, 0, 464, 0, 462, 0, 463, 0, + 463, 464, 463, 0, 464, 465, 464, 463, 464, 0, + + 0, 466, 0, 464, 0, 465, 0, 465, 0, 465, + 0, 466, 467, 466, 465, 466, 0, 0, 0, 467, + 466, 0, 467, 468, 467, 468, 467, 0, 0, 469, + 0, 467, 0, 468, 0, 468, 0, 468, 0, 469, + 470, 469, 468, 469, 0, 470, 471, 0, 469, 0, + 470, 0, 470, 0, 470, 0, 471, 472, 471, 470, + 471, 0, 0, 0, 471, 471, 0, 472, 473, 472, + 0, 472, 0, 0, 474, 472, 472, 0, 473, 0, + 473, 0, 473, 0, 474, 475, 474, 473, 474, 0, + 0, 479, 0, 474, 0, 475, 0, 475, 479, 475, + + 0, 479, 480, 479, 475, 479, 0, 0, 0, 0, + 479, 0, 480, 481, 480, 0, 480, 0, 0, 482, + 480, 480, 0, 481, 0, 481, 0, 481, 0, 482, + 483, 482, 481, 482, 0, 0, 484, 0, 482, 484, + 483, 0, 483, 0, 483, 0, 484, 483, 484, 483, + 484, 485, 486, 0, 0, 484, 0, 0, 0, 0, + 0, 485, 486, 485, 486, 485, 486, 487, 487, 485, + 485, 486, 0, 488, 0, 0, 0, 487, 0, 487, + 0, 487, 0, 488, 489, 488, 487, 488, 0, 0, + 491, 0, 488, 0, 489, 0, 489, 0, 489, 0, + + 491, 493, 491, 489, 491, 0, 0, 0, 0, 491, + 0, 493, 494, 493, 0, 493, 494, 0, 488, 0, + 493, 0, 494, 495, 494, 0, 494, 0, 0, 496, + 0, 494, 0, 495, 0, 495, 0, 495, 0, 496, + 0, 496, 495, 496, 498, 0, 0, 498, 496, 0, + 499, 0, 0, 499, 498, 0, 498, 0, 498, 0, + 499, 0, 499, 498, 499, 501, 0, 0, 501, 499, + 503, 503, 0, 0, 0, 501, 0, 501, 0, 501, + 0, 503, 513, 503, 501, 503, 0, 0, 0, 513, + 503, 0, 513, 0, 513, 0, 513, 514, 514, 0, + + 0, 513, 0, 516, 0, 0, 0, 514, 0, 514, + 0, 514, 0, 516, 517, 516, 514, 516, 0, 516, + 0, 0, 516, 0, 517, 0, 517, 518, 517, 0, + 518, 0, 517, 517, 0, 519, 0, 518, 520, 518, + 0, 518, 0, 0, 522, 519, 518, 519, 520, 519, + 520, 520, 520, 521, 519, 0, 524, 520, 0, 522, + 0, 0, 0, 521, 0, 521, 524, 521, 524, 522, + 524, 522, 521, 522, 523, 524, 0, 523, 522, 0, + 525, 0, 0, 0, 523, 0, 523, 525, 523, 0, + 525, 526, 525, 523, 525, 0, 0, 531, 0, 525, + + 531, 526, 0, 526, 0, 526, 0, 531, 532, 531, + 526, 531, 0, 0, 533, 0, 531, 0, 532, 0, + 532, 0, 532, 0, 533, 534, 533, 532, 533, 0, + 0, 535, 0, 533, 0, 534, 0, 534, 535, 534, + 0, 535, 536, 535, 534, 535, 0, 0, 0, 0, + 535, 0, 536, 538, 536, 0, 536, 538, 0, 540, + 536, 536, 0, 538, 0, 538, 544, 538, 0, 540, + 542, 540, 538, 540, 0, 0, 0, 542, 540, 0, + 542, 544, 542, 0, 542, 0, 0, 545, 0, 542, + 0, 544, 0, 544, 0, 544, 0, 545, 547, 545, + + 544, 545, 0, 0, 549, 0, 545, 0, 547, 0, + 547, 0, 547, 0, 549, 558, 549, 547, 549, 0, + 0, 559, 0, 549, 0, 558, 0, 558, 558, 558, + 0, 559, 561, 559, 558, 559, 0, 0, 562, 0, + 559, 0, 561, 0, 561, 0, 561, 0, 562, 0, + 562, 561, 562, 564, 563, 562, 563, 562, 564, 0, + 0, 0, 0, 564, 563, 564, 563, 564, 563, 565, + 566, 566, 564, 563, 0, 0, 0, 0, 0, 565, + 566, 565, 566, 565, 566, 567, 568, 567, 565, 566, + 0, 0, 0, 0, 0, 567, 568, 567, 568, 567, + + 568, 573, 0, 0, 567, 568, 0, 0, 0, 574, + 0, 573, 0, 573, 0, 573, 0, 573, 0, 574, + 573, 574, 574, 574, 575, 577, 0, 0, 574, 0, + 0, 575, 577, 0, 575, 577, 575, 577, 575, 577, + 580, 0, 0, 575, 577, 0, 0, 0, 582, 0, + 580, 0, 580, 0, 580, 0, 584, 0, 582, 580, + 582, 582, 582, 0, 0, 0, 584, 582, 584, 586, + 584, 0, 0, 0, 584, 584, 0, 0, 0, 586, + 0, 586, 0, 586, 592, 592, 592, 0, 586, 0, + 0, 0, 0, 595, 596, 0, 592, 592, 592, 592, + + 592, 592, 592, 595, 596, 595, 596, 595, 596, 597, + 598, 0, 595, 596, 0, 0, 0, 0, 0, 597, + 598, 597, 598, 597, 598, 599, 0, 0, 597, 598, + 0, 0, 0, 600, 0, 599, 0, 599, 0, 599, + 0, 601, 599, 600, 599, 600, 600, 600, 0, 602, + 0, 601, 600, 601, 0, 601, 602, 606, 0, 602, + 601, 602, 0, 602, 0, 607, 0, 606, 602, 606, + 0, 606, 0, 608, 0, 607, 606, 607, 0, 607, + 0, 610, 0, 608, 607, 608, 608, 608, 0, 613, + 0, 610, 608, 610, 0, 610, 613, 615, 0, 613, + + 610, 613, 0, 613, 615, 616, 0, 615, 613, 615, + 0, 615, 616, 0, 0, 616, 615, 616, 0, 616, + 0, 0, 626, 627, 616, 623, 623, 623, 623, 623, + 623, 623, 626, 627, 626, 627, 626, 627, 628, 0, + 0, 626, 627, 0, 0, 0, 629, 0, 628, 0, + 628, 0, 628, 0, 0, 0, 629, 628, 629, 633, + 629, 0, 0, 623, 629, 629, 0, 634, 0, 633, + 0, 633, 0, 633, 0, 636, 633, 634, 633, 634, + 0, 634, 636, 639, 0, 636, 634, 636, 0, 636, + 0, 0, 0, 639, 636, 639, 641, 639, 641, 642, + + 0, 639, 639, 642, 0, 0, 641, 0, 641, 642, + 641, 642, 0, 642, 0, 641, 0, 0, 642, 649, + 649, 649, 0, 0, 0, 0, 0, 0, 651, 652, + 0, 649, 649, 649, 649, 649, 649, 649, 651, 652, + 651, 652, 651, 652, 656, 657, 651, 651, 652, 0, + 0, 0, 652, 0, 656, 657, 656, 657, 656, 657, + 659, 662, 0, 656, 657, 0, 0, 0, 0, 0, + 659, 662, 659, 662, 659, 662, 664, 0, 659, 659, + 662, 0, 665, 0, 662, 0, 664, 0, 664, 665, + 664, 0, 665, 672, 665, 664, 665, 0, 0, 0, + + 0, 665, 0, 672, 673, 672, 0, 672, 0, 672, + 677, 0, 672, 0, 673, 0, 673, 0, 673, 0, + 677, 0, 677, 673, 677, 680, 0, 0, 682, 677, + 0, 682, 0, 677, 0, 680, 0, 680, 682, 680, + 682, 0, 682, 0, 680, 0, 0, 682, 687, 687, + 687, 0, 0, 0, 0, 0, 0, 689, 0, 0, + 687, 687, 687, 687, 687, 687, 687, 689, 691, 689, + 689, 689, 0, 0, 694, 0, 689, 0, 691, 0, + 691, 0, 691, 0, 694, 698, 694, 691, 694, 0, + 694, 702, 0, 694, 0, 698, 0, 698, 0, 698, + + 0, 702, 705, 702, 698, 702, 0, 0, 0, 0, + 702, 0, 705, 0, 705, 0, 705, 0, 0, 0, + 0, 705, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 710, 710, 710, 710, 710, 710, + 710, 710, 710, 710, 710, 710, 711, 711, 711, 711, + 711, 711, 711, 711, 711, 711, 711, 711, 712, 712, + 712, 712, 712, 712, 712, 712, 712, 712, 712, 712, + 713, 713, 713, 713, 713, 713, 713, 713, 713, 713, + 713, 713, 714, 714, 714, 714, 714, 714, 714, 714, + 714, 714, 714, 714, 715, 715, 715, 0, 715, 715, + + 715, 715, 715, 715, 715, 715, 716, 716, 0, 0, + 716, 0, 716, 717, 0, 717, 718, 718, 0, 718, + 718, 719, 719, 0, 719, 719, 719, 0, 719, 719, + 719, 719, 719, 720, 720, 720, 0, 720, 720, 720, + 720, 720, 720, 720, 720, 721, 721, 721, 721, 721, + 721, 721, 721, 0, 721, 721, 722, 0, 0, 722, + 722, 722, 722, 722, 722, 722, 722, 723, 0, 0, + 723, 723, 723, 723, 723, 723, 723, 723, 724, 0, + 0, 724, 0, 724, 724, 724, 724, 724, 724, 725, + 725, 0, 725, 725, 726, 726, 0, 726, 726, 727, + + 727, 0, 727, 727, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, + 708, 708, 708 } ; extern int yy_flex_debug; int yy_flex_debug = 1; -static yyconst short int yy_rule_linenum[132] = +static yyconst short int yy_rule_linenum[131] = { 0, 103, 106, 108, 109, 110, 113, 115, 116, 117, 129, 136, 143, 149, 158, 166, 174, 175, 177, 196, 202, 203, 204, 205, 206, 209, 215, 222, 229, 236, 246, - 280, 287, 288, 289, 290, 298, 299, 300, 301, 302, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, - - 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, - 389, 390, 395, 396, 397, 400, 406, 413, 422, 433, - 439, 441, 442, 444, 446, 448, 461, 467, 473, 480, - 482 + 280, 287, 291, 292, 300, 301, 302, 303, 304, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + + 378, 379, 380, 381, 382, 383, 384, 385, 386, 391, + 392, 397, 398, 399, 402, 408, 415, 424, 435, 441, + 443, 444, 446, 448, 450, 463, 469, 475, 482, 484 } ; static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr; @@ -1902,7 +1877,7 @@ static asn1_integer_t asn1p_atoi(char *ptr); /* errno is either 0 or ERANGE */ /* Newline */ /* White-space */ -#line 1906 "asn1p_l.c" +#line 1881 "asn1p_l.c" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -2056,7 +2031,7 @@ YY_DECL #line 101 "asn1p_l.l" -#line 2060 "asn1p_l.c" +#line 2035 "asn1p_l.c" if ( yy_init ) { @@ -2104,14 +2079,14 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 721 ) + if ( yy_current_state >= 709 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; *yy_state_ptr++ = yy_current_state; ++yy_cp; } - while ( yy_base[yy_current_state] != 4484 ); + while ( yy_base[yy_current_state] != 4405 ); yy_find_action: yy_current_state = *--yy_state_ptr; @@ -2148,13 +2123,13 @@ do_action: /* This label is used only to access EOF actions. */ { if ( yy_act == 0 ) fprintf( stderr, "--scanner backing up\n" ); - else if ( yy_act < 132 ) + else if ( yy_act < 131 ) fprintf( stderr, "--accepting rule at line %d (\"%s\")\n", yy_rule_linenum[yy_act], yytext ); - else if ( yy_act == 132 ) + else if ( yy_act == 131 ) fprintf( stderr, "--accepting default rule (\"%s\")\n", yytext ); - else if ( yy_act == 133 ) + else if ( yy_act == 132 ) fprintf( stderr, "--(end of buffer or a NUL)\n" ); else fprintf( stderr, "--EOF (start condition %d)\n", YY_START ); @@ -2450,19 +2425,17 @@ YY_RULE_SETUP #line 287 "asn1p_l.l" return TOK_ABSENT; YY_BREAK +/* +ABSTRACT-SYNTAX return TOK_ABSTRACT_SYNTAX; + */ case 33: YY_RULE_SETUP -#line 288 "asn1p_l.l" -return TOK_ABSTRACT_SYNTAX; - YY_BREAK -case 34: -YY_RULE_SETUP -#line 289 "asn1p_l.l" +#line 291 "asn1p_l.l" return TOK_ALL; YY_BREAK -case 35: +case 34: YY_RULE_SETUP -#line 290 "asn1p_l.l" +#line 292 "asn1p_l.l" { /* Appeared in 1990, removed in 1997 */ if(TYPE_LIFETIME(1990, 1997)) @@ -2472,88 +2445,88 @@ YY_RULE_SETUP REJECT; } YY_BREAK -case 36: +case 35: YY_RULE_SETUP -#line 298 "asn1p_l.l" +#line 300 "asn1p_l.l" return TOK_APPLICATION; YY_BREAK -case 37: +case 36: YY_RULE_SETUP -#line 299 "asn1p_l.l" +#line 301 "asn1p_l.l" return TOK_AUTOMATIC; YY_BREAK -case 38: +case 37: YY_RULE_SETUP -#line 300 "asn1p_l.l" +#line 302 "asn1p_l.l" return TOK_BEGIN; YY_BREAK -case 39: +case 38: YY_RULE_SETUP -#line 301 "asn1p_l.l" +#line 303 "asn1p_l.l" return TOK_BIT; YY_BREAK -case 40: +case 39: YY_RULE_SETUP -#line 302 "asn1p_l.l" +#line 304 "asn1p_l.l" { if(TYPE_LIFETIME(1994, 0)) return TOK_BMPString; REJECT; } YY_BREAK -case 41: +case 40: YY_RULE_SETUP -#line 307 "asn1p_l.l" +#line 309 "asn1p_l.l" return TOK_BOOLEAN; YY_BREAK -case 42: +case 41: YY_RULE_SETUP -#line 308 "asn1p_l.l" +#line 310 "asn1p_l.l" return TOK_BY; YY_BREAK -case 43: +case 42: YY_RULE_SETUP -#line 309 "asn1p_l.l" +#line 311 "asn1p_l.l" return TOK_CHARACTER; YY_BREAK -case 44: +case 43: YY_RULE_SETUP -#line 310 "asn1p_l.l" +#line 312 "asn1p_l.l" return TOK_CHOICE; YY_BREAK -case 45: +case 44: YY_RULE_SETUP -#line 311 "asn1p_l.l" +#line 313 "asn1p_l.l" return TOK_CLASS; YY_BREAK -case 46: +case 45: YY_RULE_SETUP -#line 312 "asn1p_l.l" +#line 314 "asn1p_l.l" return TOK_COMPONENT; YY_BREAK -case 47: +case 46: YY_RULE_SETUP -#line 313 "asn1p_l.l" +#line 315 "asn1p_l.l" return TOK_COMPONENTS; YY_BREAK -case 48: +case 47: YY_RULE_SETUP -#line 314 "asn1p_l.l" +#line 316 "asn1p_l.l" return TOK_CONSTRAINED; YY_BREAK -case 49: +case 48: YY_RULE_SETUP -#line 315 "asn1p_l.l" +#line 317 "asn1p_l.l" return TOK_CONTAINING; YY_BREAK -case 50: +case 49: YY_RULE_SETUP -#line 316 "asn1p_l.l" +#line 318 "asn1p_l.l" return TOK_DEFAULT; YY_BREAK -case 51: +case 50: YY_RULE_SETUP -#line 317 "asn1p_l.l" +#line 319 "asn1p_l.l" { /* Appeared in 1990, removed in 1997 */ if(TYPE_LIFETIME(1990, 1997)) @@ -2564,355 +2537,355 @@ YY_RULE_SETUP REJECT; } YY_BREAK -case 52: +case 51: YY_RULE_SETUP -#line 326 "asn1p_l.l" +#line 328 "asn1p_l.l" return TOK_DEFINITIONS; YY_BREAK -case 53: +case 52: YY_RULE_SETUP -#line 327 "asn1p_l.l" +#line 329 "asn1p_l.l" return TOK_EMBEDDED; YY_BREAK -case 54: +case 53: YY_RULE_SETUP -#line 328 "asn1p_l.l" +#line 330 "asn1p_l.l" return TOK_ENCODED; YY_BREAK -case 55: +case 54: YY_RULE_SETUP -#line 329 "asn1p_l.l" +#line 331 "asn1p_l.l" return TOK_ENCODING_CONTROL; YY_BREAK -case 56: +case 55: YY_RULE_SETUP -#line 330 "asn1p_l.l" +#line 332 "asn1p_l.l" return TOK_END; YY_BREAK -case 57: +case 56: YY_RULE_SETUP -#line 331 "asn1p_l.l" +#line 333 "asn1p_l.l" return TOK_ENUMERATED; YY_BREAK -case 58: +case 57: YY_RULE_SETUP -#line 332 "asn1p_l.l" +#line 334 "asn1p_l.l" return TOK_EXCEPT; YY_BREAK -case 59: +case 58: YY_RULE_SETUP -#line 333 "asn1p_l.l" +#line 335 "asn1p_l.l" return TOK_EXPLICIT; YY_BREAK -case 60: +case 59: YY_RULE_SETUP -#line 334 "asn1p_l.l" +#line 336 "asn1p_l.l" return TOK_EXPORTS; YY_BREAK -case 61: +case 60: YY_RULE_SETUP -#line 335 "asn1p_l.l" +#line 337 "asn1p_l.l" return TOK_EXTENSIBILITY; YY_BREAK -case 62: +case 61: YY_RULE_SETUP -#line 336 "asn1p_l.l" +#line 338 "asn1p_l.l" return TOK_EXTERNAL; YY_BREAK -case 63: +case 62: YY_RULE_SETUP -#line 337 "asn1p_l.l" +#line 339 "asn1p_l.l" return TOK_FALSE; YY_BREAK -case 64: +case 63: YY_RULE_SETUP -#line 338 "asn1p_l.l" +#line 340 "asn1p_l.l" return TOK_FROM; YY_BREAK -case 65: +case 64: YY_RULE_SETUP -#line 339 "asn1p_l.l" +#line 341 "asn1p_l.l" return TOK_GeneralizedTime; YY_BREAK -case 66: +case 65: YY_RULE_SETUP -#line 340 "asn1p_l.l" +#line 342 "asn1p_l.l" return TOK_GeneralString; YY_BREAK -case 67: +case 66: YY_RULE_SETUP -#line 341 "asn1p_l.l" +#line 343 "asn1p_l.l" return TOK_GraphicString; YY_BREAK -case 68: +case 67: YY_RULE_SETUP -#line 342 "asn1p_l.l" +#line 344 "asn1p_l.l" return TOK_IA5String; YY_BREAK -case 69: +case 68: YY_RULE_SETUP -#line 343 "asn1p_l.l" +#line 345 "asn1p_l.l" return TOK_IDENTIFIER; YY_BREAK -case 70: +case 69: YY_RULE_SETUP -#line 344 "asn1p_l.l" +#line 346 "asn1p_l.l" return TOK_IMPLICIT; YY_BREAK -case 71: +case 70: YY_RULE_SETUP -#line 345 "asn1p_l.l" +#line 347 "asn1p_l.l" return TOK_IMPLIED; YY_BREAK -case 72: +case 71: YY_RULE_SETUP -#line 346 "asn1p_l.l" +#line 348 "asn1p_l.l" return TOK_IMPORTS; YY_BREAK -case 73: +case 72: YY_RULE_SETUP -#line 347 "asn1p_l.l" +#line 349 "asn1p_l.l" return TOK_INCLUDES; YY_BREAK -case 74: +case 73: YY_RULE_SETUP -#line 348 "asn1p_l.l" +#line 350 "asn1p_l.l" return TOK_INSTANCE; YY_BREAK -case 75: +case 74: YY_RULE_SETUP -#line 349 "asn1p_l.l" +#line 351 "asn1p_l.l" return TOK_INSTRUCTIONS; YY_BREAK -case 76: +case 75: YY_RULE_SETUP -#line 350 "asn1p_l.l" +#line 352 "asn1p_l.l" return TOK_INTEGER; YY_BREAK -case 77: +case 76: YY_RULE_SETUP -#line 351 "asn1p_l.l" +#line 353 "asn1p_l.l" return TOK_INTERSECTION; YY_BREAK -case 78: +case 77: YY_RULE_SETUP -#line 352 "asn1p_l.l" +#line 354 "asn1p_l.l" return TOK_ISO646String; YY_BREAK -case 79: +case 78: YY_RULE_SETUP -#line 353 "asn1p_l.l" +#line 355 "asn1p_l.l" return TOK_MAX; YY_BREAK -case 80: +case 79: YY_RULE_SETUP -#line 354 "asn1p_l.l" +#line 356 "asn1p_l.l" return TOK_MIN; YY_BREAK -case 81: +case 80: YY_RULE_SETUP -#line 355 "asn1p_l.l" +#line 357 "asn1p_l.l" return TOK_MINUS_INFINITY; YY_BREAK -case 82: +case 81: YY_RULE_SETUP -#line 356 "asn1p_l.l" +#line 358 "asn1p_l.l" return TOK_NULL; YY_BREAK -case 83: +case 82: YY_RULE_SETUP -#line 357 "asn1p_l.l" +#line 359 "asn1p_l.l" return TOK_NumericString; YY_BREAK -case 84: +case 83: YY_RULE_SETUP -#line 358 "asn1p_l.l" +#line 360 "asn1p_l.l" return TOK_OBJECT; YY_BREAK -case 85: +case 84: YY_RULE_SETUP -#line 359 "asn1p_l.l" +#line 361 "asn1p_l.l" return TOK_ObjectDescriptor; YY_BREAK -case 86: +case 85: YY_RULE_SETUP -#line 360 "asn1p_l.l" +#line 362 "asn1p_l.l" return TOK_OCTET; YY_BREAK -case 87: +case 86: YY_RULE_SETUP -#line 361 "asn1p_l.l" +#line 363 "asn1p_l.l" return TOK_OF; YY_BREAK -case 88: +case 87: YY_RULE_SETUP -#line 362 "asn1p_l.l" +#line 364 "asn1p_l.l" return TOK_OPTIONAL; YY_BREAK -case 89: +case 88: YY_RULE_SETUP -#line 363 "asn1p_l.l" +#line 365 "asn1p_l.l" return TOK_PATTERN; YY_BREAK -case 90: +case 89: YY_RULE_SETUP -#line 364 "asn1p_l.l" +#line 366 "asn1p_l.l" return TOK_PDV; YY_BREAK -case 91: +case 90: YY_RULE_SETUP -#line 365 "asn1p_l.l" +#line 367 "asn1p_l.l" return TOK_PLUS_INFINITY; YY_BREAK -case 92: +case 91: YY_RULE_SETUP -#line 366 "asn1p_l.l" +#line 368 "asn1p_l.l" return TOK_PRESENT; YY_BREAK -case 93: +case 92: YY_RULE_SETUP -#line 367 "asn1p_l.l" +#line 369 "asn1p_l.l" return TOK_PrintableString; YY_BREAK -case 94: +case 93: YY_RULE_SETUP -#line 368 "asn1p_l.l" +#line 370 "asn1p_l.l" return TOK_PRIVATE; YY_BREAK -case 95: +case 94: YY_RULE_SETUP -#line 369 "asn1p_l.l" +#line 371 "asn1p_l.l" return TOK_REAL; YY_BREAK -case 96: +case 95: YY_RULE_SETUP -#line 370 "asn1p_l.l" +#line 372 "asn1p_l.l" return TOK_RELATIVE_OID; YY_BREAK -case 97: +case 96: YY_RULE_SETUP -#line 371 "asn1p_l.l" +#line 373 "asn1p_l.l" return TOK_SEQUENCE; YY_BREAK -case 98: +case 97: YY_RULE_SETUP -#line 372 "asn1p_l.l" +#line 374 "asn1p_l.l" return TOK_SET; YY_BREAK -case 99: +case 98: YY_RULE_SETUP -#line 373 "asn1p_l.l" +#line 375 "asn1p_l.l" return TOK_SIZE; YY_BREAK -case 100: +case 99: YY_RULE_SETUP -#line 374 "asn1p_l.l" +#line 376 "asn1p_l.l" return TOK_STRING; YY_BREAK -case 101: +case 100: YY_RULE_SETUP -#line 375 "asn1p_l.l" +#line 377 "asn1p_l.l" return TOK_SYNTAX; YY_BREAK -case 102: +case 101: YY_RULE_SETUP -#line 376 "asn1p_l.l" +#line 378 "asn1p_l.l" return TOK_T61String; YY_BREAK -case 103: +case 102: YY_RULE_SETUP -#line 377 "asn1p_l.l" +#line 379 "asn1p_l.l" return TOK_TAGS; YY_BREAK -case 104: +case 103: YY_RULE_SETUP -#line 378 "asn1p_l.l" +#line 380 "asn1p_l.l" return TOK_TeletexString; YY_BREAK -case 105: +case 104: YY_RULE_SETUP -#line 379 "asn1p_l.l" +#line 381 "asn1p_l.l" return TOK_TRUE; YY_BREAK -case 106: +case 105: YY_RULE_SETUP -#line 380 "asn1p_l.l" +#line 382 "asn1p_l.l" return TOK_TYPE_IDENTIFIER; YY_BREAK -case 107: +case 106: YY_RULE_SETUP -#line 381 "asn1p_l.l" +#line 383 "asn1p_l.l" return TOK_UNION; YY_BREAK -case 108: +case 107: YY_RULE_SETUP -#line 382 "asn1p_l.l" +#line 384 "asn1p_l.l" return TOK_UNIQUE; YY_BREAK -case 109: +case 108: YY_RULE_SETUP -#line 383 "asn1p_l.l" +#line 385 "asn1p_l.l" return TOK_UNIVERSAL; YY_BREAK -case 110: +case 109: YY_RULE_SETUP -#line 384 "asn1p_l.l" +#line 386 "asn1p_l.l" { if(TYPE_LIFETIME(1994, 0)) return TOK_UniversalString; REJECT; } YY_BREAK -case 111: +case 110: YY_RULE_SETUP -#line 389 "asn1p_l.l" +#line 391 "asn1p_l.l" return TOK_UTCTime; YY_BREAK -case 112: +case 111: YY_RULE_SETUP -#line 390 "asn1p_l.l" +#line 392 "asn1p_l.l" { if(TYPE_LIFETIME(1994, 0)) return TOK_UTF8String; REJECT; } YY_BREAK -case 113: +case 112: YY_RULE_SETUP -#line 395 "asn1p_l.l" +#line 397 "asn1p_l.l" return TOK_VideotexString; YY_BREAK -case 114: +case 113: YY_RULE_SETUP -#line 396 "asn1p_l.l" +#line 398 "asn1p_l.l" return TOK_VisibleString; YY_BREAK -case 115: +case 114: YY_RULE_SETUP -#line 397 "asn1p_l.l" +#line 399 "asn1p_l.l" return TOK_WITH; YY_BREAK -case 116: +case 115: YY_RULE_SETUP -#line 400 "asn1p_l.l" +#line 402 "asn1p_l.l" { CHECK_DASHES; asn1p_lval.tv_str = strdup(yytext); return TOK_typefieldreference; } YY_BREAK -case 117: +case 116: YY_RULE_SETUP -#line 406 "asn1p_l.l" +#line 408 "asn1p_l.l" { CHECK_DASHES; asn1p_lval.tv_str = strdup(yytext); return TOK_valuefieldreference; } YY_BREAK -case 118: +case 117: YY_RULE_SETUP -#line 413 "asn1p_l.l" +#line 415 "asn1p_l.l" { CHECK_DASHES; asn1p_lval.tv_str = strdup(yytext); @@ -2922,9 +2895,9 @@ YY_RULE_SETUP /* * objectclassreference */ -case 119: +case 118: YY_RULE_SETUP -#line 422 "asn1p_l.l" +#line 424 "asn1p_l.l" { CHECK_DASHES; asn1p_lval.tv_str = strdup(yytext); @@ -2936,43 +2909,43 @@ YY_RULE_SETUP * NOTE: TOK_objectclassreference must be combined * with this token to produce true typereference. */ -case 120: +case 119: YY_RULE_SETUP -#line 433 "asn1p_l.l" +#line 435 "asn1p_l.l" { CHECK_DASHES; asn1p_lval.tv_str = strdup(yytext); return TOK_typereference; } YY_BREAK -case 121: +case 120: YY_RULE_SETUP -#line 439 "asn1p_l.l" +#line 441 "asn1p_l.l" return TOK_PPEQ; YY_BREAK -case 122: +case 121: YY_RULE_SETUP -#line 441 "asn1p_l.l" +#line 443 "asn1p_l.l" return TOK_ThreeDots; YY_BREAK -case 123: +case 122: YY_RULE_SETUP -#line 442 "asn1p_l.l" +#line 444 "asn1p_l.l" return TOK_TwoDots; YY_BREAK -case 124: +case 123: YY_RULE_SETUP -#line 444 "asn1p_l.l" +#line 446 "asn1p_l.l" return yytext[0]; YY_BREAK -case 125: +case 124: YY_RULE_SETUP -#line 446 "asn1p_l.l" +#line 448 "asn1p_l.l" /* Ignore whitespace */ YY_BREAK -case 126: +case 125: YY_RULE_SETUP -#line 448 "asn1p_l.l" +#line 450 "asn1p_l.l" { if(TYPE_LIFETIME(1994, 0)) fprintf(stderr, "ERROR: "); @@ -2985,50 +2958,51 @@ YY_RULE_SETUP } YY_BREAK -case 127: +case 126: YY_RULE_SETUP -#line 461 "asn1p_l.l" +#line 463 "asn1p_l.l" { asn1p_lval.tv_opaque.buf = strdup(yytext); asn1p_lval.tv_opaque.len = yyleng; return TOK_opaque; } YY_BREAK -case 128: +case 127: YY_RULE_SETUP -#line 467 "asn1p_l.l" +#line 469 "asn1p_l.l" { asn1p_lval.tv_opaque.buf = strdup(yytext); asn1p_lval.tv_opaque.len = yyleng; return TOK_opaque; } YY_BREAK -case 129: +case 128: YY_RULE_SETUP -#line 473 "asn1p_l.l" +#line 475 "asn1p_l.l" { yy_pop_state(); return '}'; } YY_BREAK -case 130: +case 129: YY_RULE_SETUP -#line 480 "asn1p_l.l" +#line 482 "asn1p_l.l" return yytext[0]; /* Union, Intersection */ YY_BREAK -case 131: +case 130: YY_RULE_SETUP -#line 482 "asn1p_l.l" +#line 484 "asn1p_l.l" { fprintf(stderr, "Unexpected token at line %d: \"%s\"\n", yylineno, yytext); while(YYSTATE != INITIAL) yy_pop_state(); - yy_top_state(); /* Just to use this function. */ - yyterminate(); - yy_fatal_error("Unexpected token"); + if(0) { + yy_top_state(); /* Just to use this function. */ + yy_fatal_error("Parse error"); + } return -1; } YY_BREAK @@ -3039,19 +3013,19 @@ case YY_STATE_EOF(quoted): case YY_STATE_EOF(opaque): case YY_STATE_EOF(encoding_control): case YY_STATE_EOF(with_syntax): -#line 494 "asn1p_l.l" +#line 497 "asn1p_l.l" { while(YYSTATE != INITIAL) yy_pop_state(); yyterminate(); } YY_BREAK -case 132: +case 131: YY_RULE_SETUP -#line 501 "asn1p_l.l" +#line 504 "asn1p_l.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 3055 "asn1p_l.c" +#line 3029 "asn1p_l.c" case YY_END_OF_BUFFER: { @@ -3338,7 +3312,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 721 ) + if ( yy_current_state >= 709 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -3368,11 +3342,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 721 ) + if ( yy_current_state >= 709 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 720); + yy_is_jam = (yy_current_state == 708); if ( ! yy_is_jam ) *yy_state_ptr++ = yy_current_state; @@ -3933,7 +3907,7 @@ int main() return 0; } #endif -#line 501 "asn1p_l.l" +#line 504 "asn1p_l.l" /* |