PreviousUpNext

15.4.576  src/lib/compiler/front/parser/yacc/mythryl.grammar.pkg

generic package mythryl_lr_vals_fun(package token:  Token;)
 : (weak) api { package parser_data : Parser_Data;
       package tokens : Mythryl_Tokens;
   }
 { 
package parser_data{
package header { 
##  mythryl.grammar
#
# This is the Mythryl syntax grammar file.
# Mythryl-Yacc consumes this and spits out an LALR (1)
# parser which eats ASCII text and excretes
# raw_syntax syntax trees -- see
#
#     compiler/parse/raw-syntax/raw-syntax.api
#     compiler/parse/raw-syntax/raw-syntax.pkg
#
# The file syntax here is very close to classic
# YACC input syntax, with Mythryl substituted
# for C in the actions.  The biggest difference
# is that when we declare nonterminal symbols via
# '%nonterm', we also declare types for them.
#
# The top section (to the first double-percent-sign
# separator) contains arbitrary Mythryl code -- support
# for rule actions.

# Compiled by:
#     src/lib/compiler/front/parser/parser.sublib


#     Appel's 1992 Critique http://www.cs.princetone.edu/research/techforms/TR-364-92
#     points out a case in which SML implementations (of the time at least)
#     would in fact "go wrong":  If we're to use Mythryl as a trusted environment
#     in which to run untrusted code from the internet, this will need to be
#     reviewed and if necessary repaired in some fashion.               XXX BUGGO FIXME




###             "Bilbo had a shirt of mithril rings that Thorin gave him.
###              I never told him, but its worth was greater than
###              the value of the Shire."
### 
###                                           -- Gandalf



###             "I think it is extraordinarily important that
###              we in computer science keep fun in computing.
###
###              When it started out, it was an awful lot of fun.
###
###              Of course, the paying customers got shafted every
###              now and then, and after awhile we began to take
###              their complaints seriously.  We began to feel as
###              if we really were responsible for the successful,
###              error-free perfect use of these machines.
###
###              I don't think we are.
###
###              I think we're responsible for stretching them,
###              setting them off in new directions, and keeping
###              fun in the house.  I hope the field of computer
###              science never loses its sense of fun.
###
###              Above all, I hope we don't become missionaries.
###              Don't feel as if you're Bible salesmen.  The
###              world has too many of those already.  What you
###              know about computing other people will learn.
###              Don't feel as if the key to successful computing
###              is only in your hands.
###
###              What's in your hands, I think and hope, is
###              intelligence:  The ability to see the machine
###              as more than when you were first led up to it,
###              that you can make it more."   
###
###                 -- Alan J Perlis
###
###                     (Quoted in the excellent MIT
###                      introductory programming text
###                       "Structure and Interpretation
###                        of Computer Programs".)



###             "I have heard from many different people that they
###              find the ML syntax confusing, ugly, and difficult
###              to learn.  As a long-time ML programmer, I am quite
###              comfortable with ML syntax; but perhaps the frequency
###              of these comments might serve as a hint that there is
###              an opportunity for a syntax designer of rare taste and
###              genius."
###
###                                         -- Andrew W Appel  1992



                                                # hash_string                           is from   src/lib/src/hash-string.pkg
include raw_syntax;                             # raw_syntax                            is from   src/lib/compiler/front/parser/raw-syntax/raw-syntax.pkg
include make_raw_syntax;                        # make_raw_syntax                       is from   src/lib/compiler/front/parser/raw-syntax/make-raw-syntax.pkg
include error_message;                          # error_message                         is from   src/lib/compiler/front/basics/errormsg/error-message.pkg
include symbol;                                 # symbol                                is from   src/lib/compiler/front/basics/map/symbol.pkg
include fast_symbol;                            # fast_symbol                           is from   src/lib/compiler/front/basics/map/fast-symbol.pkg
include raw_syntax_junk;                        # raw_syntax_junk                       is from   src/lib/compiler/front/parser/raw-syntax/raw-syntax-junk.pkg
include regex_to_raw_syntax;                    # regex_to_raw_syntax                   is from   src/lib/compiler/front/parser/raw-syntax/regex-to-raw-syntax.pkg
include fixity;                                 # fixity                                is from   src/lib/compiler/front/basics/map/fixity.pkg

package elc = expand_list_comprehension_syntax; # expand_list_comprehension_syntax      is from   src/lib/compiler/front/parser/raw-syntax/expand-list-comprehension-syntax.pkg
package hs  = hash_string;                      # hash_string                           is from   src/lib/src/hash-string.pkg

include printf_format_string_to_raw_syntax;     # printf_format_string_to_raw_syntax    is from   src/lib/compiler/front/parser/raw-syntax/printf-format-string-to-raw-syntax.pkg


Raw_Symbol
    =
    fast_symbol::Raw_Symbol;



# fun mark_expression (e as SOURCE_CODE_REGION_FOR_EXPRESSION    _, _, _) =>  e;
#     mark_expression (e,                                           a, b) =>  SOURCE_CODE_REGION_FOR_EXPRESSION (e, (a, b));
# end;

# fun mark_declaration (d as SOURCE_CODE_REGION_FOR_DECLARATION _, _, _) =>  d;
#     mark_declaration (d,                                          a, b) =>  SOURCE_CODE_REGION_FOR_DECLARATION (d, (a, b));
# end;


# fun dropit (id, idleft, idright)
#     =
#     {   my RAWSYM( word, string )
#            =
#            id;

#         fun log_change new_string
#             =
#           case  *mythryl_parser::edit_request_stream 

#                THE stream
#                     =>
#                     {   file::write (
#                             stream,
#                             (   (int::to_string (idleft - 2))
#                             +   ": `" + string + "` -> `" + new_string + "`\n"
#                             )
#                         );
#                         id;
#                     };

#                NULL => id;

#           esac;



#       fun munge ([], _, done)
#                 =>
#                 log_change (implode (reverse done));

#           munge (c ! to_do, last, done)
#               =>
#               {   if  (char::is_lower last
#                     and  char::is_upper c
#                         ) 
#                       munge( to_do, c, (char::to_lower c) ! '_' ! done );
#                   else
#                   if (char::is_upper c )
#                       munge( to_do, c, (char::to_lower c) ! done );
#                   else
#                       munge( to_do, c, c ! done );
#                   fi; fi;
#               };
#       end;

#         fun its_big_enough char_list
#             =
#           length( char_list ) > 1;

# #            case char_list
# #              'a' ! _ => length( char_list ) > 7;
# #              'b' ! _ => length( char_list ) > 7;
# #              'c' ! _ => length( char_list ) > 7;
# #              'd' ! _ => length( char_list ) > 7;
# #              'e' ! _ => length( char_list ) > 7;
# #              'f' ! _ => length( char_list ) > 7;
# #              'g' ! _ => length( char_list ) > 7;
# #              'h' ! _ => length( char_list ) > 7;
# #              'i' ! _ => length( char_list ) > 7;
# #              'j' ! _ => length( char_list ) > 7;
# #              'k' ! _ => length( char_list ) > 7;
# #              'l' ! _ => length( char_list ) > 7;
# #              'm' ! _ => length( char_list ) > 7;
# #              'n' ! _ => length( char_list ) > 7;
# #              'o' ! _ => length( char_list ) > 7;
# #              'p' ! _ => length( char_list ) > 7;
# #              'q' ! _ => length( char_list ) > 7;
# #              'r' ! _ => length( char_list ) > 7;
# #              's' ! _ => length( char_list ) > 7;
# #              't' ! _ => length( char_list ) > 7;
# #              'u' ! _ => length( char_list ) > 7;
# #              'v' ! _ => length( char_list ) > 7;
# #              'w' ! _ => length( char_list ) > 7;
# #              'x' ! _ => length( char_list ) > 7;
# #              'y' ! _ => length( char_list ) > 7;
# #              'z' ! _ => length( char_list ) > 7;
# #              _ => FALSE;
# #            esac;

#         char_list = explode string;

#       has_lower = list::exists char::is_lower char_list;
#       has_upper = list::exists char::is_upper char_list;

#       case (has_lower, has_upper)

#            (TRUE,  TRUE )
#                =>
#                if   (its_big_enough char_list)
#                    
#                     munge (char_list, '_', [] );
#                else
#                     id;
#                fi;
#            _              =>   id;

#       esac;

#     };

# Given "a::b::c", return ["a", "b", "c"]:
#
fun explode_path string
    =
    loop (char_list, [], [])
    where
         char_list = explode string;

         fun loop (chars_left, chars_done, result_strings)
             =
             case  chars_left

                  []  =>
                      reverse ((implode (reverse chars_done)) ! result_strings);

                  (':' ! ':' ! rest)    # Found a path divider.
                      =>
                      loop( rest, [], (implode (reverse chars_done)) ! result_strings );

                  ('`' ! rest)          # chars_left == `++` or such -- must be last string in path.
                      =>
                      reverse ((implode chars_left) ! result_strings);

                  (c ! rest)
                      =>
                      loop( rest, c ! chars_done, result_strings );

             esac;  
    end;



# The grammar token declaration section starts after this marker:



};
package lr_table = token::lr_table;
package token = token;
stipulate include lr_table; herein 
my table={   action_rows =
"\
\\001\000\001\000\000\000\002\000\000\000\000\000\
\\001\000\002\000\108\004\003\000\108\004\004\000\108\004\005\000\108\004\
\\008\000\108\004\009\000\108\004\010\000\108\004\011\000\108\004\
\\012\000\108\004\013\000\108\004\014\000\108\004\017\000\108\004\
\\018\000\108\004\019\000\108\004\020\000\108\004\021\000\108\004\
\\022\000\108\004\023\000\108\004\024\000\108\004\025\000\108\004\
\\026\000\108\004\027\000\108\004\028\000\108\004\030\000\108\004\
\\031\000\108\004\035\000\108\004\037\000\108\004\045\000\108\004\
\\049\000\003\002\051\000\108\004\053\000\108\004\055\000\108\004\
\\057\000\108\004\058\000\108\004\059\000\108\004\061\000\108\004\
\\062\000\108\004\063\000\108\004\064\000\108\004\066\000\108\004\
\\067\000\108\004\068\000\223\004\070\000\108\004\071\000\108\004\
\\072\000\108\004\073\000\108\004\075\000\108\004\076\000\108\004\
\\077\000\108\004\079\000\108\004\080\000\108\004\081\000\108\004\
\\083\000\108\004\084\000\108\004\085\000\108\004\087\000\108\004\
\\089\000\108\004\091\000\108\004\092\000\108\004\093\000\108\004\
\\095\000\108\004\096\000\108\004\097\000\108\004\099\000\108\004\
\\100\000\108\004\101\000\108\004\104\000\108\004\106\000\108\004\
\\108\000\108\004\110\000\108\004\111\000\108\004\112\000\108\004\
\\114\000\108\004\115\000\108\004\116\000\108\004\118\000\108\004\
\\119\000\108\004\120\000\108\004\123\000\108\004\124\000\108\004\
\\126\000\108\004\127\000\108\004\128\000\108\004\130\000\108\004\
\\131\000\108\004\133\000\108\004\134\000\108\004\137\000\108\004\
\\138\000\108\004\139\000\108\004\140\000\108\004\142\000\108\004\
\\143\000\108\004\145\000\108\004\146\000\108\004\148\000\108\004\
\\149\000\108\004\151\000\108\004\152\000\108\004\153\000\108\004\
\\154\000\108\004\156\000\108\004\158\000\108\004\160\000\108\004\
\\161\000\108\004\162\000\108\004\166\000\108\004\170\000\108\004\
\\171\000\108\004\172\000\223\004\173\000\108\004\174\000\108\004\
\\177\000\108\004\178\000\108\004\179\000\108\004\180\000\108\004\
\\183\000\108\004\000\000\
\\001\000\002\000\111\004\003\000\111\004\004\000\111\004\005\000\111\004\
\\008\000\111\004\009\000\111\004\010\000\111\004\011\000\111\004\
\\012\000\111\004\013\000\111\004\014\000\111\004\017\000\111\004\
\\018\000\111\004\019\000\111\004\020\000\111\004\021\000\111\004\
\\022\000\111\004\023\000\111\004\024\000\111\004\025\000\111\004\
\\026\000\111\004\027\000\111\004\028\000\111\004\030\000\111\004\
\\031\000\111\004\035\000\111\004\037\000\111\004\044\000\168\004\
\\045\000\111\004\049\000\002\002\051\000\111\004\053\000\111\004\
\\055\000\111\004\057\000\111\004\058\000\111\004\059\000\111\004\
\\061\000\111\004\062\000\111\004\063\000\111\004\064\000\111\004\
\\066\000\111\004\067\000\111\004\068\000\222\004\070\000\111\004\
\\071\000\111\004\072\000\111\004\073\000\111\004\074\000\006\001\
\\075\000\111\004\076\000\111\004\077\000\111\004\078\000\005\001\
\\079\000\111\004\080\000\111\004\081\000\111\004\082\000\004\001\
\\083\000\111\004\084\000\111\004\085\000\111\004\086\000\003\001\
\\087\000\111\004\089\000\111\004\090\000\002\001\091\000\111\004\
\\092\000\111\004\093\000\111\004\095\000\111\004\096\000\111\004\
\\097\000\111\004\098\000\001\001\099\000\111\004\100\000\111\004\
\\101\000\111\004\102\000\000\001\104\000\111\004\106\000\111\004\
\\108\000\111\004\109\000\255\000\110\000\111\004\111\000\111\004\
\\112\000\111\004\113\000\254\000\114\000\111\004\115\000\111\004\
\\116\000\111\004\117\000\253\000\118\000\111\004\119\000\111\004\
\\120\000\111\004\121\000\252\000\123\000\111\004\124\000\111\004\
\\125\000\251\000\126\000\111\004\127\000\111\004\128\000\111\004\
\\129\000\250\000\130\000\111\004\131\000\111\004\133\000\111\004\
\\134\000\111\004\137\000\111\004\138\000\111\004\139\000\111\004\
\\140\000\111\004\142\000\111\004\143\000\111\004\145\000\111\004\
\\146\000\111\004\148\000\111\004\149\000\111\004\151\000\111\004\
\\152\000\111\004\153\000\111\004\154\000\111\004\156\000\111\004\
\\158\000\111\004\160\000\111\004\161\000\111\004\162\000\111\004\
\\166\000\111\004\170\000\111\004\171\000\111\004\172\000\222\004\
\\173\000\111\004\174\000\111\004\177\000\111\004\178\000\111\004\
\\179\000\111\004\180\000\111\004\183\000\111\004\000\000\
\\001\000\002\000\111\004\003\000\111\004\004\000\111\004\005\000\111\004\
\\008\000\111\004\009\000\111\004\010\000\111\004\011\000\111\004\
\\012\000\111\004\013\000\111\004\014\000\111\004\017\000\111\004\
\\018\000\111\004\019\000\111\004\020\000\111\004\021\000\111\004\
\\022\000\111\004\023\000\111\004\024\000\111\004\025\000\111\004\
\\026\000\111\004\027\000\111\004\028\000\111\004\030\000\111\004\
\\031\000\111\004\035\000\111\004\037\000\111\004\044\000\168\004\
\\045\000\111\004\051\000\111\004\053\000\111\004\055\000\111\004\
\\057\000\111\004\058\000\111\004\059\000\111\004\061\000\111\004\
\\062\000\111\004\063\000\111\004\064\000\111\004\066\000\111\004\
\\067\000\111\004\070\000\111\004\071\000\111\004\072\000\111\004\
\\073\000\111\004\074\000\006\001\075\000\111\004\076\000\111\004\
\\077\000\111\004\078\000\005\001\079\000\111\004\080\000\111\004\
\\081\000\111\004\082\000\004\001\083\000\111\004\084\000\111\004\
\\085\000\111\004\086\000\003\001\087\000\111\004\089\000\111\004\
\\090\000\002\001\091\000\111\004\092\000\111\004\093\000\111\004\
\\095\000\111\004\096\000\111\004\097\000\111\004\098\000\001\001\
\\099\000\111\004\100\000\111\004\101\000\111\004\102\000\000\001\
\\104\000\111\004\106\000\111\004\108\000\111\004\109\000\255\000\
\\110\000\111\004\111\000\111\004\112\000\111\004\113\000\254\000\
\\114\000\111\004\115\000\111\004\116\000\111\004\117\000\253\000\
\\118\000\111\004\119\000\111\004\120\000\111\004\121\000\252\000\
\\123\000\111\004\124\000\111\004\125\000\251\000\126\000\111\004\
\\127\000\111\004\128\000\111\004\129\000\250\000\130\000\111\004\
\\131\000\111\004\133\000\111\004\134\000\111\004\137\000\111\004\
\\138\000\111\004\139\000\111\004\140\000\111\004\142\000\111\004\
\\143\000\111\004\145\000\111\004\146\000\111\004\148\000\111\004\
\\149\000\111\004\151\000\111\004\152\000\111\004\153\000\111\004\
\\154\000\111\004\156\000\111\004\158\000\111\004\160\000\111\004\
\\161\000\111\004\162\000\111\004\166\000\111\004\170\000\111\004\
\\171\000\111\004\173\000\111\004\174\000\111\004\177\000\111\004\
\\178\000\111\004\179\000\111\004\180\000\111\004\183\000\111\004\000\000\
\\001\000\002\000\112\004\003\000\112\004\004\000\112\004\005\000\112\004\
\\008\000\112\004\009\000\112\004\010\000\112\004\011\000\112\004\
\\012\000\112\004\013\000\112\004\014\000\112\004\017\000\112\004\
\\018\000\112\004\019\000\112\004\020\000\112\004\021\000\112\004\
\\022\000\112\004\023\000\112\004\024\000\112\004\025\000\112\004\
\\026\000\112\004\027\000\112\004\028\000\112\004\030\000\112\004\
\\031\000\112\004\035\000\112\004\037\000\112\004\044\000\167\004\
\\045\000\112\004\051\000\112\004\053\000\112\004\055\000\112\004\
\\057\000\112\004\058\000\112\004\059\000\112\004\061\000\112\004\
\\062\000\112\004\063\000\112\004\064\000\112\004\066\000\112\004\
\\067\000\112\004\070\000\112\004\071\000\112\004\072\000\112\004\
\\073\000\112\004\075\000\112\004\076\000\112\004\077\000\112\004\
\\079\000\112\004\080\000\112\004\081\000\112\004\083\000\112\004\
\\084\000\112\004\085\000\112\004\087\000\112\004\089\000\112\004\
\\091\000\112\004\092\000\112\004\093\000\112\004\095\000\112\004\
\\096\000\112\004\097\000\112\004\099\000\112\004\100\000\112\004\
\\101\000\112\004\104\000\112\004\106\000\112\004\108\000\112\004\
\\110\000\112\004\111\000\112\004\112\000\112\004\114\000\112\004\
\\115\000\112\004\116\000\112\004\118\000\112\004\119\000\112\004\
\\120\000\112\004\123\000\112\004\124\000\112\004\126\000\112\004\
\\127\000\112\004\128\000\112\004\130\000\112\004\131\000\112\004\
\\133\000\112\004\134\000\112\004\137\000\112\004\138\000\112\004\
\\139\000\112\004\140\000\112\004\142\000\112\004\143\000\112\004\
\\145\000\112\004\146\000\112\004\148\000\112\004\149\000\112\004\
\\151\000\112\004\152\000\112\004\153\000\112\004\154\000\112\004\
\\156\000\112\004\158\000\112\004\160\000\112\004\161\000\112\004\
\\162\000\112\004\166\000\112\004\170\000\112\004\171\000\112\004\
\\173\000\112\004\174\000\112\004\177\000\112\004\178\000\112\004\
\\179\000\112\004\180\000\112\004\183\000\112\004\000\000\
\\001\000\002\000\113\004\003\000\113\004\004\000\113\004\005\000\113\004\
\\008\000\113\004\009\000\113\004\010\000\113\004\011\000\113\004\
\\012\000\113\004\013\000\113\004\014\000\113\004\017\000\113\004\
\\018\000\113\004\019\000\113\004\020\000\113\004\021\000\113\004\
\\022\000\113\004\023\000\113\004\024\000\113\004\025\000\113\004\
\\026\000\113\004\027\000\113\004\028\000\113\004\030\000\113\004\
\\031\000\113\004\035\000\113\004\037\000\113\004\044\000\182\004\
\\045\000\113\004\051\000\113\004\053\000\113\004\055\000\113\004\
\\057\000\113\004\058\000\113\004\059\000\113\004\061\000\113\004\
\\062\000\113\004\063\000\113\004\064\000\113\004\066\000\113\004\
\\067\000\113\004\070\000\113\004\071\000\113\004\072\000\113\004\
\\073\000\113\004\075\000\113\004\076\000\113\004\077\000\113\004\
\\079\000\113\004\080\000\113\004\081\000\113\004\083\000\113\004\
\\084\000\113\004\085\000\113\004\087\000\113\004\089\000\113\004\
\\091\000\113\004\092\000\113\004\093\000\113\004\095\000\113\004\
\\096\000\113\004\097\000\113\004\099\000\113\004\100\000\113\004\
\\101\000\113\004\104\000\113\004\106\000\113\004\108\000\113\004\
\\110\000\113\004\111\000\113\004\112\000\113\004\114\000\113\004\
\\115\000\113\004\116\000\113\004\118\000\113\004\119\000\113\004\
\\120\000\113\004\123\000\113\004\124\000\113\004\126\000\113\004\
\\127\000\113\004\128\000\113\004\130\000\113\004\131\000\113\004\
\\133\000\113\004\134\000\113\004\137\000\113\004\138\000\113\004\
\\139\000\113\004\140\000\113\004\142\000\113\004\143\000\113\004\
\\145\000\113\004\146\000\113\004\148\000\113\004\149\000\113\004\
\\151\000\113\004\152\000\113\004\153\000\113\004\154\000\113\004\
\\156\000\113\004\158\000\113\004\160\000\113\004\161\000\113\004\
\\162\000\113\004\166\000\113\004\170\000\113\004\171\000\113\004\
\\173\000\113\004\174\000\113\004\177\000\113\004\178\000\113\004\
\\179\000\113\004\180\000\113\004\183\000\113\004\000\000\
\\001\000\002\000\114\004\003\000\114\004\004\000\114\004\005\000\114\004\
\\008\000\114\004\009\000\114\004\010\000\114\004\011\000\114\004\
\\012\000\114\004\013\000\114\004\014\000\114\004\017\000\114\004\
\\018\000\114\004\019\000\114\004\020\000\114\004\021\000\114\004\
\\022\000\114\004\023\000\114\004\024\000\114\004\025\000\114\004\
\\026\000\114\004\027\000\114\004\028\000\114\004\030\000\114\004\
\\031\000\114\004\035\000\114\004\037\000\114\004\044\000\183\004\
\\045\000\114\004\051\000\114\004\053\000\114\004\055\000\114\004\
\\057\000\114\004\058\000\114\004\059\000\114\004\061\000\114\004\
\\062\000\114\004\063\000\114\004\064\000\114\004\066\000\114\004\
\\067\000\114\004\070\000\114\004\071\000\114\004\072\000\114\004\
\\073\000\114\004\075\000\114\004\076\000\114\004\077\000\114\004\
\\079\000\114\004\080\000\114\004\081\000\114\004\083\000\114\004\
\\084\000\114\004\085\000\114\004\087\000\114\004\089\000\114\004\
\\091\000\114\004\092\000\114\004\093\000\114\004\095\000\114\004\
\\096\000\114\004\097\000\114\004\099\000\114\004\100\000\114\004\
\\101\000\114\004\104\000\114\004\106\000\114\004\108\000\114\004\
\\110\000\114\004\111\000\114\004\112\000\114\004\114\000\114\004\
\\115\000\114\004\116\000\114\004\118\000\114\004\119\000\114\004\
\\120\000\114\004\123\000\114\004\124\000\114\004\126\000\114\004\
\\127\000\114\004\128\000\114\004\130\000\114\004\131\000\114\004\
\\133\000\114\004\134\000\114\004\137\000\114\004\138\000\114\004\
\\139\000\114\004\140\000\114\004\142\000\114\004\143\000\114\004\
\\145\000\114\004\146\000\114\004\148\000\114\004\149\000\114\004\
\\151\000\114\004\152\000\114\004\153\000\114\004\154\000\114\004\
\\156\000\114\004\158\000\114\004\160\000\114\004\161\000\114\004\
\\162\000\114\004\166\000\114\004\170\000\114\004\171\000\114\004\
\\173\000\114\004\174\000\114\004\177\000\114\004\178\000\114\004\
\\179\000\114\004\180\000\114\004\183\000\114\004\000\000\
\\001\000\002\000\115\004\003\000\115\004\004\000\115\004\005\000\115\004\
\\008\000\115\004\009\000\115\004\010\000\115\004\011\000\115\004\
\\012\000\115\004\013\000\115\004\014\000\115\004\017\000\115\004\
\\018\000\115\004\019\000\115\004\020\000\115\004\021\000\115\004\
\\022\000\115\004\023\000\115\004\024\000\115\004\025\000\115\004\
\\026\000\115\004\027\000\115\004\028\000\115\004\030\000\115\004\
\\031\000\115\004\035\000\115\004\037\000\115\004\044\000\184\004\
\\045\000\115\004\051\000\115\004\053\000\115\004\055\000\115\004\
\\057\000\115\004\058\000\115\004\059\000\115\004\061\000\115\004\
\\062\000\115\004\063\000\115\004\064\000\115\004\066\000\115\004\
\\067\000\115\004\070\000\115\004\071\000\115\004\072\000\115\004\
\\073\000\115\004\075\000\115\004\076\000\115\004\077\000\115\004\
\\079\000\115\004\080\000\115\004\081\000\115\004\083\000\115\004\
\\084\000\115\004\085\000\115\004\087\000\115\004\089\000\115\004\
\\091\000\115\004\092\000\115\004\093\000\115\004\095\000\115\004\
\\096\000\115\004\097\000\115\004\099\000\115\004\100\000\115\004\
\\101\000\115\004\104\000\115\004\106\000\115\004\108\000\115\004\
\\110\000\115\004\111\000\115\004\112\000\115\004\114\000\115\004\
\\115\000\115\004\116\000\115\004\118\000\115\004\119\000\115\004\
\\120\000\115\004\123\000\115\004\124\000\115\004\126\000\115\004\
\\127\000\115\004\128\000\115\004\130\000\115\004\131\000\115\004\
\\133\000\115\004\134\000\115\004\137\000\115\004\138\000\115\004\
\\139\000\115\004\140\000\115\004\142\000\115\004\143\000\115\004\
\\145\000\115\004\146\000\115\004\148\000\115\004\149\000\115\004\
\\151\000\115\004\152\000\115\004\153\000\115\004\154\000\115\004\
\\156\000\115\004\158\000\115\004\160\000\115\004\161\000\115\004\
\\162\000\115\004\166\000\115\004\170\000\115\004\171\000\115\004\
\\173\000\115\004\174\000\115\004\177\000\115\004\178\000\115\004\
\\179\000\115\004\180\000\115\004\183\000\115\004\000\000\
\\001\000\002\000\116\004\003\000\116\004\004\000\116\004\005\000\116\004\
\\008\000\116\004\009\000\116\004\010\000\116\004\011\000\116\004\
\\012\000\116\004\013\000\116\004\014\000\116\004\017\000\116\004\
\\018\000\116\004\019\000\116\004\020\000\116\004\021\000\116\004\
\\022\000\116\004\023\000\116\004\024\000\116\004\025\000\116\004\
\\026\000\116\004\027\000\116\004\028\000\116\004\030\000\116\004\
\\031\000\116\004\035\000\116\004\037\000\116\004\044\000\185\004\
\\045\000\116\004\051\000\116\004\053\000\116\004\055\000\116\004\
\\057\000\116\004\058\000\116\004\059\000\116\004\061\000\116\004\
\\062\000\116\004\063\000\116\004\064\000\116\004\066\000\116\004\
\\067\000\116\004\070\000\116\004\071\000\116\004\072\000\116\004\
\\073\000\116\004\075\000\116\004\076\000\116\004\077\000\116\004\
\\079\000\116\004\080\000\116\004\081\000\116\004\083\000\116\004\
\\084\000\116\004\085\000\116\004\087\000\116\004\089\000\116\004\
\\091\000\116\004\092\000\116\004\093\000\116\004\095\000\116\004\
\\096\000\116\004\097\000\116\004\099\000\116\004\100\000\116\004\
\\101\000\116\004\104\000\116\004\106\000\116\004\108\000\116\004\
\\110\000\116\004\111\000\116\004\112\000\116\004\114\000\116\004\
\\115\000\116\004\116\000\116\004\118\000\116\004\119\000\116\004\
\\120\000\116\004\123\000\116\004\124\000\116\004\126\000\116\004\
\\127\000\116\004\128\000\116\004\130\000\116\004\131\000\116\004\
\\133\000\116\004\134\000\116\004\137\000\116\004\138\000\116\004\
\\139\000\116\004\140\000\116\004\142\000\116\004\143\000\116\004\
\\145\000\116\004\146\000\116\004\148\000\116\004\149\000\116\004\
\\151\000\116\004\152\000\116\004\153\000\116\004\154\000\116\004\
\\156\000\116\004\158\000\116\004\160\000\116\004\161\000\116\004\
\\162\000\116\004\166\000\116\004\170\000\116\004\171\000\116\004\
\\173\000\116\004\174\000\116\004\177\000\116\004\178\000\116\004\
\\179\000\116\004\180\000\116\004\183\000\116\004\000\000\
\\001\000\002\000\117\004\003\000\117\004\004\000\117\004\005\000\117\004\
\\008\000\117\004\009\000\117\004\010\000\117\004\011\000\117\004\
\\012\000\117\004\013\000\117\004\014\000\117\004\017\000\117\004\
\\018\000\117\004\019\000\117\004\020\000\117\004\021\000\117\004\
\\022\000\117\004\023\000\117\004\024\000\117\004\025\000\117\004\
\\026\000\117\004\027\000\117\004\028\000\117\004\030\000\117\004\
\\031\000\117\004\035\000\117\004\037\000\117\004\044\000\186\004\
\\045\000\117\004\051\000\117\004\053\000\117\004\055\000\117\004\
\\057\000\117\004\058\000\117\004\059\000\117\004\061\000\117\004\
\\062\000\117\004\063\000\117\004\064\000\117\004\066\000\117\004\
\\067\000\117\004\070\000\117\004\071\000\117\004\072\000\117\004\
\\073\000\117\004\075\000\117\004\076\000\117\004\077\000\117\004\
\\079\000\117\004\080\000\117\004\081\000\117\004\083\000\117\004\
\\084\000\117\004\085\000\117\004\087\000\117\004\089\000\117\004\
\\091\000\117\004\092\000\117\004\093\000\117\004\095\000\117\004\
\\096\000\117\004\097\000\117\004\099\000\117\004\100\000\117\004\
\\101\000\117\004\104\000\117\004\106\000\117\004\108\000\117\004\
\\110\000\117\004\111\000\117\004\112\000\117\004\114\000\117\004\
\\115\000\117\004\116\000\117\004\118\000\117\004\119\000\117\004\
\\120\000\117\004\123\000\117\004\124\000\117\004\126\000\117\004\
\\127\000\117\004\128\000\117\004\130\000\117\004\131\000\117\004\
\\133\000\117\004\134\000\117\004\137\000\117\004\138\000\117\004\
\\139\000\117\004\140\000\117\004\142\000\117\004\143\000\117\004\
\\145\000\117\004\146\000\117\004\148\000\117\004\149\000\117\004\
\\151\000\117\004\152\000\117\004\153\000\117\004\154\000\117\004\
\\156\000\117\004\158\000\117\004\160\000\117\004\161\000\117\004\
\\162\000\117\004\166\000\117\004\170\000\117\004\171\000\117\004\
\\173\000\117\004\174\000\117\004\177\000\117\004\178\000\117\004\
\\179\000\117\004\180\000\117\004\183\000\117\004\000\000\
\\001\000\002\000\118\004\003\000\118\004\004\000\118\004\005\000\118\004\
\\008\000\118\004\009\000\118\004\010\000\118\004\011\000\118\004\
\\012\000\118\004\013\000\118\004\014\000\118\004\017\000\118\004\
\\018\000\118\004\019\000\118\004\020\000\118\004\021\000\118\004\
\\022\000\118\004\023\000\118\004\024\000\118\004\025\000\118\004\
\\026\000\118\004\027\000\118\004\028\000\118\004\030\000\118\004\
\\031\000\118\004\035\000\118\004\037\000\118\004\044\000\187\004\
\\045\000\118\004\051\000\118\004\053\000\118\004\055\000\118\004\
\\057\000\118\004\058\000\118\004\059\000\118\004\061\000\118\004\
\\062\000\118\004\063\000\118\004\064\000\118\004\066\000\118\004\
\\067\000\118\004\070\000\118\004\071\000\118\004\072\000\118\004\
\\073\000\118\004\075\000\118\004\076\000\118\004\077\000\118\004\
\\079\000\118\004\080\000\118\004\081\000\118\004\083\000\118\004\
\\084\000\118\004\085\000\118\004\087\000\118\004\089\000\118\004\
\\091\000\118\004\092\000\118\004\093\000\118\004\095\000\118\004\
\\096\000\118\004\097\000\118\004\099\000\118\004\100\000\118\004\
\\101\000\118\004\104\000\118\004\106\000\118\004\108\000\118\004\
\\110\000\118\004\111\000\118\004\112\000\118\004\114\000\118\004\
\\115\000\118\004\116\000\118\004\118\000\118\004\119\000\118\004\
\\120\000\118\004\123\000\118\004\124\000\118\004\126\000\118\004\
\\127\000\118\004\128\000\118\004\130\000\118\004\131\000\118\004\
\\133\000\118\004\134\000\118\004\137\000\118\004\138\000\118\004\
\\139\000\118\004\140\000\118\004\142\000\118\004\143\000\118\004\
\\145\000\118\004\146\000\118\004\148\000\118\004\149\000\118\004\
\\151\000\118\004\152\000\118\004\153\000\118\004\154\000\118\004\
\\156\000\118\004\158\000\118\004\160\000\118\004\161\000\118\004\
\\162\000\118\004\166\000\118\004\170\000\118\004\171\000\118\004\
\\173\000\118\004\174\000\118\004\177\000\118\004\178\000\118\004\
\\179\000\118\004\180\000\118\004\183\000\118\004\000\000\
\\001\000\002\000\119\004\003\000\119\004\004\000\119\004\005\000\119\004\
\\008\000\119\004\009\000\119\004\010\000\119\004\011\000\119\004\
\\012\000\119\004\013\000\119\004\014\000\119\004\017\000\119\004\
\\018\000\119\004\019\000\119\004\020\000\119\004\021\000\119\004\
\\022\000\119\004\023\000\119\004\024\000\119\004\025\000\119\004\
\\026\000\119\004\027\000\119\004\028\000\119\004\030\000\119\004\
\\031\000\119\004\035\000\119\004\037\000\119\004\044\000\188\004\
\\045\000\119\004\051\000\119\004\053\000\119\004\055\000\119\004\
\\057\000\119\004\058\000\119\004\059\000\119\004\061\000\119\004\
\\062\000\119\004\063\000\119\004\064\000\119\004\066\000\119\004\
\\067\000\119\004\070\000\119\004\071\000\119\004\072\000\119\004\
\\073\000\119\004\075\000\119\004\076\000\119\004\077\000\119\004\
\\079\000\119\004\080\000\119\004\081\000\119\004\083\000\119\004\
\\084\000\119\004\085\000\119\004\087\000\119\004\089\000\119\004\
\\091\000\119\004\092\000\119\004\093\000\119\004\095\000\119\004\
\\096\000\119\004\097\000\119\004\099\000\119\004\100\000\119\004\
\\101\000\119\004\104\000\119\004\106\000\119\004\108\000\119\004\
\\110\000\119\004\111\000\119\004\112\000\119\004\114\000\119\004\
\\115\000\119\004\116\000\119\004\118\000\119\004\119\000\119\004\
\\120\000\119\004\123\000\119\004\124\000\119\004\126\000\119\004\
\\127\000\119\004\128\000\119\004\130\000\119\004\131\000\119\004\
\\133\000\119\004\134\000\119\004\137\000\119\004\138\000\119\004\
\\139\000\119\004\140\000\119\004\142\000\119\004\143\000\119\004\
\\145\000\119\004\146\000\119\004\148\000\119\004\149\000\119\004\
\\151\000\119\004\152\000\119\004\153\000\119\004\154\000\119\004\
\\156\000\119\004\158\000\119\004\160\000\119\004\161\000\119\004\
\\162\000\119\004\166\000\119\004\170\000\119\004\171\000\119\004\
\\173\000\119\004\174\000\119\004\177\000\119\004\178\000\119\004\
\\179\000\119\004\180\000\119\004\183\000\119\004\000\000\
\\001\000\002\000\120\004\003\000\120\004\004\000\120\004\005\000\120\004\
\\008\000\120\004\009\000\120\004\010\000\120\004\011\000\120\004\
\\012\000\120\004\013\000\120\004\014\000\120\004\017\000\120\004\
\\018\000\120\004\019\000\120\004\020\000\120\004\021\000\120\004\
\\022\000\120\004\023\000\120\004\024\000\120\004\025\000\120\004\
\\026\000\120\004\027\000\120\004\028\000\120\004\030\000\120\004\
\\031\000\120\004\035\000\120\004\037\000\120\004\044\000\189\004\
\\045\000\120\004\051\000\120\004\053\000\120\004\055\000\120\004\
\\057\000\120\004\058\000\120\004\059\000\120\004\061\000\120\004\
\\062\000\120\004\063\000\120\004\064\000\120\004\066\000\120\004\
\\067\000\120\004\070\000\120\004\071\000\120\004\072\000\120\004\
\\073\000\120\004\075\000\120\004\076\000\120\004\077\000\120\004\
\\079\000\120\004\080\000\120\004\081\000\120\004\083\000\120\004\
\\084\000\120\004\085\000\120\004\087\000\120\004\089\000\120\004\
\\091\000\120\004\092\000\120\004\093\000\120\004\095\000\120\004\
\\096\000\120\004\097\000\120\004\099\000\120\004\100\000\120\004\
\\101\000\120\004\104\000\120\004\106\000\120\004\108\000\120\004\
\\110\000\120\004\111\000\120\004\112\000\120\004\114\000\120\004\
\\115\000\120\004\116\000\120\004\118\000\120\004\119\000\120\004\
\\120\000\120\004\123\000\120\004\124\000\120\004\126\000\120\004\
\\127\000\120\004\128\000\120\004\130\000\120\004\131\000\120\004\
\\133\000\120\004\134\000\120\004\137\000\120\004\138\000\120\004\
\\139\000\120\004\140\000\120\004\142\000\120\004\143\000\120\004\
\\145\000\120\004\146\000\120\004\148\000\120\004\149\000\120\004\
\\151\000\120\004\152\000\120\004\153\000\120\004\154\000\120\004\
\\156\000\120\004\158\000\120\004\160\000\120\004\161\000\120\004\
\\162\000\120\004\166\000\120\004\170\000\120\004\171\000\120\004\
\\173\000\120\004\174\000\120\004\177\000\120\004\178\000\120\004\
\\179\000\120\004\180\000\120\004\183\000\120\004\000\000\
\\001\000\002\000\121\004\003\000\121\004\004\000\121\004\005\000\121\004\
\\008\000\121\004\009\000\121\004\010\000\121\004\011\000\121\004\
\\012\000\121\004\013\000\121\004\014\000\121\004\017\000\121\004\
\\018\000\121\004\019\000\121\004\020\000\121\004\021\000\121\004\
\\022\000\121\004\023\000\121\004\024\000\121\004\025\000\121\004\
\\026\000\121\004\027\000\121\004\028\000\121\004\030\000\121\004\
\\031\000\121\004\035\000\121\004\037\000\121\004\044\000\190\004\
\\045\000\121\004\051\000\121\004\053\000\121\004\055\000\121\004\
\\057\000\121\004\058\000\121\004\059\000\121\004\061\000\121\004\
\\062\000\121\004\063\000\121\004\064\000\121\004\066\000\121\004\
\\067\000\121\004\070\000\121\004\071\000\121\004\072\000\121\004\
\\073\000\121\004\075\000\121\004\076\000\121\004\077\000\121\004\
\\079\000\121\004\080\000\121\004\081\000\121\004\083\000\121\004\
\\084\000\121\004\085\000\121\004\087\000\121\004\089\000\121\004\
\\091\000\121\004\092\000\121\004\093\000\121\004\095\000\121\004\
\\096\000\121\004\097\000\121\004\099\000\121\004\100\000\121\004\
\\101\000\121\004\104\000\121\004\106\000\121\004\108\000\121\004\
\\110\000\121\004\111\000\121\004\112\000\121\004\114\000\121\004\
\\115\000\121\004\116\000\121\004\118\000\121\004\119\000\121\004\
\\120\000\121\004\123\000\121\004\124\000\121\004\126\000\121\004\
\\127\000\121\004\128\000\121\004\130\000\121\004\131\000\121\004\
\\133\000\121\004\134\000\121\004\137\000\121\004\138\000\121\004\
\\139\000\121\004\140\000\121\004\142\000\121\004\143\000\121\004\
\\145\000\121\004\146\000\121\004\148\000\121\004\149\000\121\004\
\\151\000\121\004\152\000\121\004\153\000\121\004\154\000\121\004\
\\156\000\121\004\158\000\121\004\160\000\121\004\161\000\121\004\
\\162\000\121\004\166\000\121\004\170\000\121\004\171\000\121\004\
\\173\000\121\004\174\000\121\004\177\000\121\004\178\000\121\004\
\\179\000\121\004\180\000\121\004\183\000\121\004\000\000\
\\001\000\002\000\122\004\003\000\122\004\004\000\122\004\005\000\122\004\
\\008\000\122\004\009\000\122\004\010\000\122\004\011\000\122\004\
\\012\000\122\004\013\000\122\004\014\000\122\004\017\000\122\004\
\\018\000\122\004\019\000\122\004\020\000\122\004\021\000\122\004\
\\022\000\122\004\023\000\122\004\024\000\122\004\025\000\122\004\
\\026\000\122\004\027\000\122\004\028\000\122\004\030\000\122\004\
\\031\000\122\004\035\000\122\004\037\000\122\004\044\000\191\004\
\\045\000\122\004\051\000\122\004\053\000\122\004\055\000\122\004\
\\057\000\122\004\058\000\122\004\059\000\122\004\061\000\122\004\
\\062\000\122\004\063\000\122\004\064\000\122\004\066\000\122\004\
\\067\000\122\004\070\000\122\004\071\000\122\004\072\000\122\004\
\\073\000\122\004\075\000\122\004\076\000\122\004\077\000\122\004\
\\079\000\122\004\080\000\122\004\081\000\122\004\083\000\122\004\
\\084\000\122\004\085\000\122\004\087\000\122\004\089\000\122\004\
\\091\000\122\004\092\000\122\004\093\000\122\004\095\000\122\004\
\\096\000\122\004\097\000\122\004\099\000\122\004\100\000\122\004\
\\101\000\122\004\104\000\122\004\106\000\122\004\108\000\122\004\
\\110\000\122\004\111\000\122\004\112\000\122\004\114\000\122\004\
\\115\000\122\004\116\000\122\004\118\000\122\004\119\000\122\004\
\\120\000\122\004\123\000\122\004\124\000\122\004\126\000\122\004\
\\127\000\122\004\128\000\122\004\130\000\122\004\131\000\122\004\
\\133\000\122\004\134\000\122\004\137\000\122\004\138\000\122\004\
\\139\000\122\004\140\000\122\004\142\000\122\004\143\000\122\004\
\\145\000\122\004\146\000\122\004\148\000\122\004\149\000\122\004\
\\151\000\122\004\152\000\122\004\153\000\122\004\154\000\122\004\
\\156\000\122\004\158\000\122\004\160\000\122\004\161\000\122\004\
\\162\000\122\004\166\000\122\004\170\000\122\004\171\000\122\004\
\\173\000\122\004\174\000\122\004\177\000\122\004\178\000\122\004\
\\179\000\122\004\180\000\122\004\183\000\122\004\000\000\
\\001\000\002\000\123\004\003\000\123\004\004\000\123\004\005\000\123\004\
\\008\000\123\004\009\000\123\004\010\000\123\004\011\000\123\004\
\\012\000\123\004\013\000\123\004\014\000\123\004\017\000\123\004\
\\018\000\123\004\019\000\123\004\020\000\123\004\021\000\123\004\
\\022\000\123\004\023\000\123\004\024\000\123\004\025\000\123\004\
\\026\000\123\004\027\000\123\004\028\000\123\004\030\000\123\004\
\\031\000\123\004\035\000\123\004\037\000\123\004\044\000\192\004\
\\045\000\123\004\051\000\123\004\053\000\123\004\055\000\123\004\
\\057\000\123\004\058\000\123\004\059\000\123\004\061\000\123\004\
\\062\000\123\004\063\000\123\004\064\000\123\004\066\000\123\004\
\\067\000\123\004\070\000\123\004\071\000\123\004\072\000\123\004\
\\073\000\123\004\075\000\123\004\076\000\123\004\077\000\123\004\
\\079\000\123\004\080\000\123\004\081\000\123\004\083\000\123\004\
\\084\000\123\004\085\000\123\004\087\000\123\004\089\000\123\004\
\\091\000\123\004\092\000\123\004\093\000\123\004\095\000\123\004\
\\096\000\123\004\097\000\123\004\099\000\123\004\100\000\123\004\
\\101\000\123\004\104\000\123\004\106\000\123\004\108\000\123\004\
\\110\000\123\004\111\000\123\004\112\000\123\004\114\000\123\004\
\\115\000\123\004\116\000\123\004\118\000\123\004\119\000\123\004\
\\120\000\123\004\123\000\123\004\124\000\123\004\126\000\123\004\
\\127\000\123\004\128\000\123\004\130\000\123\004\131\000\123\004\
\\133\000\123\004\134\000\123\004\137\000\123\004\138\000\123\004\
\\139\000\123\004\140\000\123\004\142\000\123\004\143\000\123\004\
\\145\000\123\004\146\000\123\004\148\000\123\004\149\000\123\004\
\\151\000\123\004\152\000\123\004\153\000\123\004\154\000\123\004\
\\156\000\123\004\158\000\123\004\160\000\123\004\161\000\123\004\
\\162\000\123\004\166\000\123\004\170\000\123\004\171\000\123\004\
\\173\000\123\004\174\000\123\004\177\000\123\004\178\000\123\004\
\\179\000\123\004\180\000\123\004\183\000\123\004\000\000\
\\001\000\002\000\124\004\003\000\124\004\004\000\124\004\005\000\124\004\
\\008\000\124\004\009\000\124\004\010\000\124\004\011\000\124\004\
\\012\000\124\004\013\000\124\004\014\000\124\004\017\000\124\004\
\\018\000\124\004\019\000\124\004\020\000\124\004\021\000\124\004\
\\022\000\124\004\023\000\124\004\024\000\124\004\025\000\124\004\
\\026\000\124\004\027\000\124\004\028\000\124\004\030\000\124\004\
\\031\000\124\004\035\000\124\004\037\000\124\004\044\000\193\004\
\\045\000\124\004\051\000\124\004\053\000\124\004\055\000\124\004\
\\057\000\124\004\058\000\124\004\059\000\124\004\061\000\124\004\
\\062\000\124\004\063\000\124\004\064\000\124\004\066\000\124\004\
\\067\000\124\004\070\000\124\004\071\000\124\004\072\000\124\004\
\\073\000\124\004\075\000\124\004\076\000\124\004\077\000\124\004\
\\079\000\124\004\080\000\124\004\081\000\124\004\083\000\124\004\
\\084\000\124\004\085\000\124\004\087\000\124\004\089\000\124\004\
\\091\000\124\004\092\000\124\004\093\000\124\004\095\000\124\004\
\\096\000\124\004\097\000\124\004\099\000\124\004\100\000\124\004\
\\101\000\124\004\104\000\124\004\106\000\124\004\108\000\124\004\
\\110\000\124\004\111\000\124\004\112\000\124\004\114\000\124\004\
\\115\000\124\004\116\000\124\004\118\000\124\004\119\000\124\004\
\\120\000\124\004\123\000\124\004\124\000\124\004\126\000\124\004\
\\127\000\124\004\128\000\124\004\130\000\124\004\131\000\124\004\
\\133\000\124\004\134\000\124\004\137\000\124\004\138\000\124\004\
\\139\000\124\004\140\000\124\004\142\000\124\004\143\000\124\004\
\\145\000\124\004\146\000\124\004\148\000\124\004\149\000\124\004\
\\151\000\124\004\152\000\124\004\153\000\124\004\154\000\124\004\
\\156\000\124\004\158\000\124\004\160\000\124\004\161\000\124\004\
\\162\000\124\004\166\000\124\004\170\000\124\004\171\000\124\004\
\\173\000\124\004\174\000\124\004\177\000\124\004\178\000\124\004\
\\179\000\124\004\180\000\124\004\183\000\124\004\000\000\
\\001\000\002\000\125\004\003\000\125\004\004\000\125\004\005\000\125\004\
\\008\000\125\004\009\000\125\004\010\000\125\004\011\000\125\004\
\\012\000\125\004\013\000\125\004\014\000\125\004\017\000\125\004\
\\018\000\125\004\019\000\125\004\020\000\125\004\021\000\125\004\
\\022\000\125\004\023\000\125\004\024\000\125\004\025\000\125\004\
\\026\000\125\004\027\000\125\004\028\000\125\004\030\000\125\004\
\\031\000\125\004\035\000\125\004\037\000\125\004\044\000\194\004\
\\045\000\125\004\051\000\125\004\053\000\125\004\055\000\125\004\
\\057\000\125\004\058\000\125\004\059\000\125\004\061\000\125\004\
\\062\000\125\004\063\000\125\004\064\000\125\004\066\000\125\004\
\\067\000\125\004\070\000\125\004\071\000\125\004\072\000\125\004\
\\073\000\125\004\075\000\125\004\076\000\125\004\077\000\125\004\
\\079\000\125\004\080\000\125\004\081\000\125\004\083\000\125\004\
\\084\000\125\004\085\000\125\004\087\000\125\004\089\000\125\004\
\\091\000\125\004\092\000\125\004\093\000\125\004\095\000\125\004\
\\096\000\125\004\097\000\125\004\099\000\125\004\100\000\125\004\
\\101\000\125\004\104\000\125\004\106\000\125\004\108\000\125\004\
\\110\000\125\004\111\000\125\004\112\000\125\004\114\000\125\004\
\\115\000\125\004\116\000\125\004\118\000\125\004\119\000\125\004\
\\120\000\125\004\123\000\125\004\124\000\125\004\126\000\125\004\
\\127\000\125\004\128\000\125\004\130\000\125\004\131\000\125\004\
\\133\000\125\004\134\000\125\004\137\000\125\004\138\000\125\004\
\\139\000\125\004\140\000\125\004\142\000\125\004\143\000\125\004\
\\145\000\125\004\146\000\125\004\148\000\125\004\149\000\125\004\
\\151\000\125\004\152\000\125\004\153\000\125\004\154\000\125\004\
\\156\000\125\004\158\000\125\004\160\000\125\004\161\000\125\004\
\\162\000\125\004\166\000\125\004\170\000\125\004\171\000\125\004\
\\173\000\125\004\174\000\125\004\177\000\125\004\178\000\125\004\
\\179\000\125\004\180\000\125\004\183\000\125\004\000\000\
\\001\000\002\000\126\004\003\000\126\004\004\000\126\004\005\000\126\004\
\\008\000\126\004\009\000\126\004\010\000\126\004\011\000\126\004\
\\012\000\126\004\013\000\126\004\014\000\126\004\017\000\126\004\
\\018\000\126\004\019\000\126\004\020\000\126\004\021\000\126\004\
\\022\000\126\004\023\000\126\004\024\000\126\004\025\000\126\004\
\\026\000\126\004\027\000\126\004\028\000\126\004\030\000\126\004\
\\031\000\126\004\035\000\126\004\037\000\126\004\044\000\195\004\
\\045\000\126\004\051\000\126\004\053\000\126\004\055\000\126\004\
\\057\000\126\004\058\000\126\004\059\000\126\004\061\000\126\004\
\\062\000\126\004\063\000\126\004\064\000\126\004\066\000\126\004\
\\067\000\126\004\070\000\126\004\071\000\126\004\072\000\126\004\
\\073\000\126\004\075\000\126\004\076\000\126\004\077\000\126\004\
\\079\000\126\004\080\000\126\004\081\000\126\004\083\000\126\004\
\\084\000\126\004\085\000\126\004\087\000\126\004\089\000\126\004\
\\091\000\126\004\092\000\126\004\093\000\126\004\095\000\126\004\
\\096\000\126\004\097\000\126\004\099\000\126\004\100\000\126\004\
\\101\000\126\004\104\000\126\004\106\000\126\004\108\000\126\004\
\\110\000\126\004\111\000\126\004\112\000\126\004\114\000\126\004\
\\115\000\126\004\116\000\126\004\118\000\126\004\119\000\126\004\
\\120\000\126\004\123\000\126\004\124\000\126\004\126\000\126\004\
\\127\000\126\004\128\000\126\004\130\000\126\004\131\000\126\004\
\\133\000\126\004\134\000\126\004\137\000\126\004\138\000\126\004\
\\139\000\126\004\140\000\126\004\142\000\126\004\143\000\126\004\
\\145\000\126\004\146\000\126\004\148\000\126\004\149\000\126\004\
\\151\000\126\004\152\000\126\004\153\000\126\004\154\000\126\004\
\\156\000\126\004\158\000\126\004\160\000\126\004\161\000\126\004\
\\162\000\126\004\166\000\126\004\170\000\126\004\171\000\126\004\
\\173\000\126\004\174\000\126\004\177\000\126\004\178\000\126\004\
\\179\000\126\004\180\000\126\004\183\000\126\004\000\000\
\\001\000\002\000\127\004\003\000\127\004\004\000\127\004\005\000\127\004\
\\008\000\127\004\009\000\127\004\010\000\127\004\011\000\127\004\
\\012\000\127\004\013\000\127\004\014\000\127\004\017\000\127\004\
\\018\000\127\004\019\000\127\004\020\000\127\004\021\000\127\004\
\\022\000\127\004\023\000\127\004\024\000\127\004\025\000\127\004\
\\026\000\127\004\027\000\127\004\028\000\127\004\030\000\127\004\
\\031\000\127\004\035\000\127\004\037\000\127\004\044\000\196\004\
\\045\000\127\004\051\000\127\004\053\000\127\004\055\000\127\004\
\\057\000\127\004\058\000\127\004\059\000\127\004\061\000\127\004\
\\062\000\127\004\063\000\127\004\064\000\127\004\066\000\127\004\
\\067\000\127\004\070\000\127\004\071\000\127\004\072\000\127\004\
\\073\000\127\004\075\000\127\004\076\000\127\004\077\000\127\004\
\\079\000\127\004\080\000\127\004\081\000\127\004\083\000\127\004\
\\084\000\127\004\085\000\127\004\087\000\127\004\089\000\127\004\
\\091\000\127\004\092\000\127\004\093\000\127\004\095\000\127\004\
\\096\000\127\004\097\000\127\004\099\000\127\004\100\000\127\004\
\\101\000\127\004\104\000\127\004\106\000\127\004\108\000\127\004\
\\110\000\127\004\111\000\127\004\112\000\127\004\114\000\127\004\
\\115\000\127\004\116\000\127\004\118\000\127\004\119\000\127\004\
\\120\000\127\004\123\000\127\004\124\000\127\004\126\000\127\004\
\\127\000\127\004\128\000\127\004\130\000\127\004\131\000\127\004\
\\133\000\127\004\134\000\127\004\137\000\127\004\138\000\127\004\
\\139\000\127\004\140\000\127\004\142\000\127\004\143\000\127\004\
\\145\000\127\004\146\000\127\004\148\000\127\004\149\000\127\004\
\\151\000\127\004\152\000\127\004\153\000\127\004\154\000\127\004\
\\156\000\127\004\158\000\127\004\160\000\127\004\161\000\127\004\
\\162\000\127\004\166\000\127\004\170\000\127\004\171\000\127\004\
\\173\000\127\004\174\000\127\004\177\000\127\004\178\000\127\004\
\\179\000\127\004\180\000\127\004\183\000\127\004\000\000\
\\001\000\002\000\128\004\003\000\128\004\004\000\128\004\005\000\128\004\
\\008\000\128\004\009\000\128\004\010\000\128\004\011\000\128\004\
\\012\000\128\004\013\000\128\004\014\000\128\004\017\000\128\004\
\\018\000\128\004\019\000\128\004\020\000\128\004\021\000\128\004\
\\022\000\128\004\023\000\128\004\024\000\128\004\025\000\128\004\
\\026\000\128\004\027\000\128\004\028\000\128\004\030\000\128\004\
\\031\000\128\004\035\000\128\004\037\000\128\004\044\000\197\004\
\\045\000\128\004\051\000\128\004\053\000\128\004\055\000\128\004\
\\057\000\128\004\058\000\128\004\059\000\128\004\061\000\128\004\
\\062\000\128\004\063\000\128\004\064\000\128\004\066\000\128\004\
\\067\000\128\004\070\000\128\004\071\000\128\004\072\000\128\004\
\\073\000\128\004\075\000\128\004\076\000\128\004\077\000\128\004\
\\079\000\128\004\080\000\128\004\081\000\128\004\083\000\128\004\
\\084\000\128\004\085\000\128\004\087\000\128\004\089\000\128\004\
\\091\000\128\004\092\000\128\004\093\000\128\004\095\000\128\004\
\\096\000\128\004\097\000\128\004\099\000\128\004\100\000\128\004\
\\101\000\128\004\104\000\128\004\106\000\128\004\108\000\128\004\
\\110\000\128\004\111\000\128\004\112\000\128\004\114\000\128\004\
\\115\000\128\004\116\000\128\004\118\000\128\004\119\000\128\004\
\\120\000\128\004\123\000\128\004\124\000\128\004\126\000\128\004\
\\127\000\128\004\128\000\128\004\130\000\128\004\131\000\128\004\
\\133\000\128\004\134\000\128\004\137\000\128\004\138\000\128\004\
\\139\000\128\004\140\000\128\004\142\000\128\004\143\000\128\004\
\\145\000\128\004\146\000\128\004\148\000\128\004\149\000\128\004\
\\151\000\128\004\152\000\128\004\153\000\128\004\154\000\128\004\
\\156\000\128\004\158\000\128\004\160\000\128\004\161\000\128\004\
\\162\000\128\004\166\000\128\004\170\000\128\004\171\000\128\004\
\\173\000\128\004\174\000\128\004\177\000\128\004\178\000\128\004\
\\179\000\128\004\180\000\128\004\183\000\128\004\000\000\
\\001\000\002\000\129\004\003\000\129\004\004\000\129\004\005\000\129\004\
\\008\000\129\004\009\000\129\004\010\000\129\004\011\000\129\004\
\\012\000\129\004\013\000\129\004\014\000\129\004\017\000\129\004\
\\018\000\129\004\019\000\129\004\020\000\129\004\021\000\129\004\
\\022\000\129\004\023\000\129\004\024\000\129\004\025\000\129\004\
\\026\000\129\004\027\000\129\004\028\000\129\004\030\000\129\004\
\\031\000\129\004\035\000\129\004\037\000\129\004\044\000\198\004\
\\045\000\129\004\051\000\129\004\053\000\129\004\055\000\129\004\
\\057\000\129\004\058\000\129\004\059\000\129\004\061\000\129\004\
\\062\000\129\004\063\000\129\004\064\000\129\004\066\000\129\004\
\\067\000\129\004\070\000\129\004\071\000\129\004\072\000\129\004\
\\073\000\129\004\075\000\129\004\076\000\129\004\077\000\129\004\
\\079\000\129\004\080\000\129\004\081\000\129\004\083\000\129\004\
\\084\000\129\004\085\000\129\004\087\000\129\004\089\000\129\004\
\\091\000\129\004\092\000\129\004\093\000\129\004\095\000\129\004\
\\096\000\129\004\097\000\129\004\099\000\129\004\100\000\129\004\
\\101\000\129\004\104\000\129\004\106\000\129\004\108\000\129\004\
\\110\000\129\004\111\000\129\004\112\000\129\004\114\000\129\004\
\\115\000\129\004\116\000\129\004\118\000\129\004\119\000\129\004\
\\120\000\129\004\123\000\129\004\124\000\129\004\126\000\129\004\
\\127\000\129\004\128\000\129\004\130\000\129\004\131\000\129\004\
\\133\000\129\004\134\000\129\004\137\000\129\004\138\000\129\004\
\\139\000\129\004\140\000\129\004\142\000\129\004\143\000\129\004\
\\145\000\129\004\146\000\129\004\148\000\129\004\149\000\129\004\
\\151\000\129\004\152\000\129\004\153\000\129\004\154\000\129\004\
\\156\000\129\004\158\000\129\004\160\000\129\004\161\000\129\004\
\\162\000\129\004\166\000\129\004\170\000\129\004\171\000\129\004\
\\173\000\129\004\174\000\129\004\177\000\129\004\178\000\129\004\
\\179\000\129\004\180\000\129\004\183\000\129\004\000\000\
\\001\000\002\000\130\004\003\000\130\004\004\000\130\004\005\000\130\004\
\\008\000\130\004\009\000\130\004\010\000\130\004\011\000\130\004\
\\012\000\130\004\013\000\130\004\014\000\130\004\017\000\130\004\
\\018\000\130\004\019\000\130\004\020\000\130\004\021\000\130\004\
\\022\000\130\004\023\000\130\004\024\000\130\004\025\000\130\004\
\\026\000\130\004\027\000\130\004\028\000\130\004\030\000\130\004\
\\031\000\130\004\035\000\130\004\037\000\130\004\044\000\200\004\
\\045\000\130\004\051\000\130\004\053\000\130\004\055\000\130\004\
\\057\000\130\004\058\000\130\004\059\000\130\004\061\000\130\004\
\\062\000\130\004\063\000\130\004\064\000\130\004\066\000\130\004\
\\067\000\130\004\070\000\130\004\071\000\130\004\072\000\130\004\
\\073\000\130\004\075\000\130\004\076\000\130\004\077\000\130\004\
\\079\000\130\004\080\000\130\004\081\000\130\004\083\000\130\004\
\\084\000\130\004\085\000\130\004\087\000\130\004\089\000\130\004\
\\091\000\130\004\092\000\130\004\093\000\130\004\095\000\130\004\
\\096\000\130\004\097\000\130\004\099\000\130\004\100\000\130\004\
\\101\000\130\004\104\000\130\004\106\000\130\004\108\000\130\004\
\\110\000\130\004\111\000\130\004\112\000\130\004\114\000\130\004\
\\115\000\130\004\116\000\130\004\118\000\130\004\119\000\130\004\
\\120\000\130\004\123\000\130\004\124\000\130\004\126\000\130\004\
\\127\000\130\004\128\000\130\004\130\000\130\004\131\000\130\004\
\\133\000\130\004\134\000\130\004\137\000\130\004\138\000\130\004\
\\139\000\130\004\140\000\130\004\142\000\130\004\143\000\130\004\
\\145\000\130\004\146\000\130\004\148\000\130\004\149\000\130\004\
\\151\000\130\004\152\000\130\004\153\000\130\004\154\000\130\004\
\\156\000\130\004\158\000\130\004\160\000\130\004\161\000\130\004\
\\162\000\130\004\166\000\130\004\170\000\130\004\171\000\130\004\
\\173\000\130\004\174\000\130\004\177\000\130\004\178\000\130\004\
\\179\000\130\004\180\000\130\004\183\000\130\004\000\000\
\\001\000\002\000\131\004\003\000\131\004\004\000\131\004\005\000\131\004\
\\008\000\131\004\009\000\131\004\010\000\131\004\011\000\131\004\
\\012\000\131\004\013\000\131\004\014\000\131\004\017\000\131\004\
\\018\000\131\004\019\000\131\004\020\000\131\004\021\000\131\004\
\\022\000\131\004\023\000\131\004\024\000\131\004\025\000\131\004\
\\026\000\131\004\027\000\131\004\028\000\131\004\030\000\131\004\
\\031\000\131\004\035\000\131\004\037\000\131\004\044\000\199\004\
\\045\000\131\004\051\000\131\004\053\000\131\004\055\000\131\004\
\\057\000\131\004\058\000\131\004\059\000\131\004\061\000\131\004\
\\062\000\131\004\063\000\131\004\064\000\131\004\066\000\131\004\
\\067\000\131\004\070\000\131\004\071\000\131\004\072\000\131\004\
\\073\000\131\004\075\000\131\004\076\000\131\004\077\000\131\004\
\\079\000\131\004\080\000\131\004\081\000\131\004\083\000\131\004\
\\084\000\131\004\085\000\131\004\087\000\131\004\089\000\131\004\
\\091\000\131\004\092\000\131\004\093\000\131\004\095\000\131\004\
\\096\000\131\004\097\000\131\004\099\000\131\004\100\000\131\004\
\\101\000\131\004\104\000\131\004\106\000\131\004\108\000\131\004\
\\110\000\131\004\111\000\131\004\112\000\131\004\114\000\131\004\
\\115\000\131\004\116\000\131\004\118\000\131\004\119\000\131\004\
\\120\000\131\004\123\000\131\004\124\000\131\004\126\000\131\004\
\\127\000\131\004\128\000\131\004\130\000\131\004\131\000\131\004\
\\133\000\131\004\134\000\131\004\137\000\131\004\138\000\131\004\
\\139\000\131\004\140\000\131\004\142\000\131\004\143\000\131\004\
\\145\000\131\004\146\000\131\004\148\000\131\004\149\000\131\004\
\\151\000\131\004\152\000\131\004\153\000\131\004\154\000\131\004\
\\156\000\131\004\158\000\131\004\160\000\131\004\161\000\131\004\
\\162\000\131\004\166\000\131\004\170\000\131\004\171\000\131\004\
\\173\000\131\004\174\000\131\004\177\000\131\004\178\000\131\004\
\\179\000\131\004\180\000\131\004\183\000\131\004\000\000\
\\001\000\002\000\132\004\003\000\132\004\004\000\132\004\005\000\132\004\
\\008\000\132\004\009\000\132\004\010\000\132\004\011\000\132\004\
\\012\000\132\004\013\000\132\004\014\000\132\004\017\000\132\004\
\\018\000\132\004\019\000\132\004\020\000\132\004\021\000\132\004\
\\022\000\132\004\023\000\132\004\024\000\132\004\025\000\132\004\
\\026\000\132\004\027\000\132\004\028\000\132\004\030\000\132\004\
\\031\000\132\004\035\000\132\004\037\000\132\004\044\000\201\004\
\\045\000\132\004\051\000\132\004\053\000\132\004\055\000\132\004\
\\057\000\132\004\058\000\132\004\059\000\132\004\061\000\132\004\
\\062\000\132\004\063\000\132\004\064\000\132\004\066\000\132\004\
\\067\000\132\004\070\000\132\004\071\000\132\004\072\000\132\004\
\\073\000\132\004\075\000\132\004\076\000\132\004\077\000\132\004\
\\079\000\132\004\080\000\132\004\081\000\132\004\083\000\132\004\
\\084\000\132\004\085\000\132\004\087\000\132\004\089\000\132\004\
\\091\000\132\004\092\000\132\004\093\000\132\004\095\000\132\004\
\\096\000\132\004\097\000\132\004\099\000\132\004\100\000\132\004\
\\101\000\132\004\104\000\132\004\106\000\132\004\108\000\132\004\
\\110\000\132\004\111\000\132\004\112\000\132\004\114\000\132\004\
\\115\000\132\004\116\000\132\004\118\000\132\004\119\000\132\004\
\\120\000\132\004\123\000\132\004\124\000\132\004\126\000\132\004\
\\127\000\132\004\128\000\132\004\130\000\132\004\131\000\132\004\
\\133\000\132\004\134\000\132\004\137\000\132\004\138\000\132\004\
\\139\000\132\004\140\000\132\004\142\000\132\004\143\000\132\004\
\\145\000\132\004\146\000\132\004\148\000\132\004\149\000\132\004\
\\151\000\132\004\152\000\132\004\153\000\132\004\154\000\132\004\
\\156\000\132\004\158\000\132\004\160\000\132\004\161\000\132\004\
\\162\000\132\004\166\000\132\004\170\000\132\004\171\000\132\004\
\\173\000\132\004\174\000\132\004\177\000\132\004\178\000\132\004\
\\179\000\132\004\180\000\132\004\183\000\132\004\000\000\
\\001\000\002\000\151\004\003\000\151\004\004\000\151\004\005\000\151\004\
\\008\000\151\004\009\000\151\004\010\000\151\004\011\000\151\004\
\\012\000\151\004\013\000\151\004\014\000\151\004\017\000\151\004\
\\018\000\151\004\019\000\151\004\020\000\151\004\021\000\151\004\
\\022\000\151\004\023\000\151\004\024\000\151\004\025\000\151\004\
\\026\000\151\004\027\000\151\004\028\000\151\004\030\000\151\004\
\\031\000\151\004\036\000\151\004\037\000\151\004\044\000\151\004\
\\045\000\151\004\049\000\151\004\051\000\151\004\053\000\151\004\
\\055\000\151\004\057\000\151\004\058\000\151\004\059\000\151\004\
\\061\000\151\004\062\000\151\004\063\000\151\004\064\000\151\004\
\\065\000\151\004\066\000\151\004\067\000\151\004\068\000\151\004\
\\069\000\151\004\070\000\151\004\071\000\151\004\072\000\151\004\
\\073\000\151\004\075\000\151\004\076\000\151\004\077\000\151\004\
\\079\000\151\004\080\000\151\004\081\000\151\004\083\000\151\004\
\\084\000\151\004\085\000\151\004\087\000\151\004\088\000\151\004\
\\089\000\151\004\091\000\151\004\092\000\151\004\093\000\151\004\
\\095\000\151\004\096\000\151\004\097\000\151\004\099\000\151\004\
\\100\000\151\004\104\000\151\004\106\000\151\004\107\000\151\004\
\\108\000\151\004\110\000\151\004\111\000\151\004\112\000\151\004\
\\114\000\151\004\115\000\151\004\116\000\151\004\118\000\151\004\
\\119\000\151\004\120\000\151\004\122\000\151\004\123\000\151\004\
\\124\000\151\004\126\000\151\004\127\000\151\004\128\000\151\004\
\\130\000\151\004\133\000\151\004\134\000\151\004\139\000\151\004\
\\140\000\151\004\142\000\151\004\143\000\151\004\145\000\151\004\
\\146\000\151\004\148\000\151\004\149\000\151\004\151\000\151\004\
\\152\000\151\004\153\000\151\004\154\000\151\004\163\000\151\004\
\\166\000\151\004\172\000\151\004\173\000\151\004\174\000\151\004\
\\175\000\151\004\176\000\151\004\179\000\151\004\180\000\151\004\
\\183\000\151\004\000\000\
\\001\000\002\000\152\004\003\000\152\004\004\000\152\004\005\000\152\004\
\\008\000\152\004\009\000\152\004\010\000\152\004\011\000\152\004\
\\012\000\152\004\013\000\152\004\014\000\152\004\017\000\152\004\
\\018\000\152\004\019\000\152\004\020\000\152\004\021\000\152\004\
\\022\000\152\004\023\000\152\004\024\000\152\004\025\000\152\004\
\\026\000\152\004\027\000\152\004\028\000\152\004\030\000\152\004\
\\031\000\152\004\036\000\152\004\037\000\152\004\044\000\152\004\
\\045\000\152\004\049\000\152\004\051\000\152\004\053\000\152\004\
\\055\000\152\004\057\000\152\004\058\000\152\004\059\000\152\004\
\\061\000\152\004\062\000\152\004\063\000\152\004\064\000\152\004\
\\065\000\152\004\066\000\152\004\067\000\152\004\068\000\152\004\
\\069\000\152\004\070\000\152\004\071\000\152\004\072\000\152\004\
\\073\000\152\004\075\000\152\004\076\000\152\004\077\000\152\004\
\\079\000\152\004\080\000\152\004\081\000\152\004\083\000\152\004\
\\084\000\152\004\085\000\152\004\087\000\152\004\088\000\152\004\
\\089\000\152\004\091\000\152\004\092\000\152\004\093\000\152\004\
\\095\000\152\004\096\000\152\004\097\000\152\004\099\000\152\004\
\\100\000\152\004\104\000\152\004\106\000\152\004\107\000\152\004\
\\108\000\152\004\110\000\152\004\111\000\152\004\112\000\152\004\
\\114\000\152\004\115\000\152\004\116\000\152\004\118\000\152\004\
\\119\000\152\004\120\000\152\004\122\000\152\004\123\000\152\004\
\\124\000\152\004\126\000\152\004\127\000\152\004\128\000\152\004\
\\130\000\152\004\133\000\152\004\134\000\152\004\139\000\152\004\
\\140\000\152\004\142\000\152\004\143\000\152\004\145\000\152\004\
\\146\000\152\004\148\000\152\004\149\000\152\004\151\000\152\004\
\\152\000\152\004\153\000\152\004\154\000\152\004\163\000\152\004\
\\166\000\152\004\172\000\152\004\173\000\152\004\174\000\152\004\
\\175\000\152\004\176\000\152\004\179\000\152\004\180\000\152\004\
\\183\000\152\004\000\000\
\\001\000\002\000\153\004\003\000\153\004\004\000\153\004\005\000\153\004\
\\008\000\153\004\009\000\153\004\010\000\153\004\011\000\153\004\
\\012\000\153\004\013\000\153\004\014\000\153\004\017\000\153\004\
\\018\000\153\004\019\000\153\004\020\000\153\004\021\000\153\004\
\\022\000\153\004\023\000\153\004\024\000\153\004\025\000\153\004\
\\026\000\153\004\027\000\153\004\028\000\153\004\030\000\153\004\
\\031\000\153\004\036\000\153\004\037\000\153\004\044\000\153\004\
\\045\000\153\004\049\000\153\004\051\000\153\004\053\000\153\004\
\\055\000\153\004\057\000\153\004\058\000\153\004\059\000\153\004\
\\061\000\153\004\062\000\153\004\063\000\153\004\064\000\153\004\
\\065\000\153\004\066\000\153\004\067\000\153\004\068\000\153\004\
\\069\000\153\004\070\000\153\004\071\000\153\004\072\000\153\004\
\\073\000\153\004\075\000\153\004\076\000\153\004\077\000\153\004\
\\079\000\153\004\080\000\153\004\081\000\153\004\083\000\153\004\
\\084\000\153\004\085\000\153\004\087\000\153\004\088\000\153\004\
\\089\000\153\004\091\000\153\004\092\000\153\004\093\000\153\004\
\\095\000\153\004\096\000\153\004\097\000\153\004\099\000\153\004\
\\100\000\153\004\104\000\153\004\106\000\153\004\107\000\153\004\
\\108\000\153\004\110\000\153\004\111\000\153\004\112\000\153\004\
\\114\000\153\004\115\000\153\004\116\000\153\004\118\000\153\004\
\\119\000\153\004\120\000\153\004\122\000\153\004\123\000\153\004\
\\124\000\153\004\126\000\153\004\127\000\153\004\128\000\153\004\
\\130\000\153\004\133\000\153\004\134\000\153\004\139\000\153\004\
\\140\000\153\004\142\000\153\004\143\000\153\004\145\000\153\004\
\\146\000\153\004\148\000\153\004\149\000\153\004\151\000\153\004\
\\152\000\153\004\153\000\153\004\154\000\153\004\163\000\153\004\
\\166\000\153\004\172\000\153\004\173\000\153\004\174\000\153\004\
\\175\000\153\004\176\000\153\004\179\000\153\004\180\000\153\004\
\\183\000\153\004\000\000\
\\001\000\002\000\154\004\003\000\154\004\004\000\154\004\005\000\154\004\
\\008\000\154\004\009\000\154\004\010\000\154\004\011\000\154\004\
\\012\000\154\004\013\000\154\004\014\000\154\004\017\000\154\004\
\\018\000\154\004\019\000\154\004\020\000\154\004\021\000\154\004\
\\022\000\154\004\023\000\154\004\024\000\154\004\025\000\154\004\
\\026\000\154\004\027\000\154\004\028\000\154\004\030\000\154\004\
\\031\000\154\004\036\000\154\004\037\000\154\004\044\000\154\004\
\\045\000\154\004\049\000\154\004\051\000\154\004\053\000\154\004\
\\055\000\154\004\057\000\154\004\058\000\154\004\059\000\154\004\
\\061\000\154\004\062\000\154\004\063\000\154\004\064\000\154\004\
\\065\000\154\004\066\000\154\004\067\000\154\004\068\000\154\004\
\\069\000\154\004\070\000\154\004\071\000\154\004\072\000\154\004\
\\073\000\154\004\075\000\154\004\076\000\154\004\077\000\154\004\
\\079\000\154\004\080\000\154\004\081\000\154\004\083\000\154\004\
\\084\000\154\004\085\000\154\004\087\000\154\004\088\000\154\004\
\\089\000\154\004\091\000\154\004\092\000\154\004\093\000\154\004\
\\095\000\154\004\096\000\154\004\097\000\154\004\099\000\154\004\
\\100\000\154\004\104\000\154\004\106\000\154\004\107\000\154\004\
\\108\000\154\004\110\000\154\004\111\000\154\004\112\000\154\004\
\\114\000\154\004\115\000\154\004\116\000\154\004\118\000\154\004\
\\119\000\154\004\120\000\154\004\122\000\154\004\123\000\154\004\
\\124\000\154\004\126\000\154\004\127\000\154\004\128\000\154\004\
\\130\000\154\004\133\000\154\004\134\000\154\004\139\000\154\004\
\\140\000\154\004\142\000\154\004\143\000\154\004\145\000\154\004\
\\146\000\154\004\148\000\154\004\149\000\154\004\151\000\154\004\
\\152\000\154\004\153\000\154\004\154\000\154\004\163\000\154\004\
\\166\000\154\004\172\000\154\004\173\000\154\004\174\000\154\004\
\\175\000\154\004\176\000\154\004\179\000\154\004\180\000\154\004\
\\183\000\154\004\000\000\
\\001\000\002\000\156\004\003\000\156\004\004\000\156\004\005\000\156\004\
\\008\000\156\004\009\000\156\004\010\000\156\004\011\000\156\004\
\\012\000\156\004\013\000\156\004\014\000\156\004\017\000\156\004\
\\018\000\156\004\019\000\156\004\020\000\156\004\021\000\156\004\
\\022\000\156\004\023\000\156\004\024\000\156\004\025\000\156\004\
\\026\000\156\004\027\000\156\004\028\000\156\004\030\000\156\004\
\\031\000\156\004\036\000\156\004\037\000\156\004\044\000\156\004\
\\045\000\156\004\049\000\156\004\051\000\156\004\053\000\156\004\
\\055\000\156\004\057\000\156\004\058\000\156\004\059\000\156\004\
\\061\000\156\004\062\000\156\004\063\000\156\004\064\000\156\004\
\\065\000\156\004\066\000\156\004\067\000\156\004\068\000\156\004\
\\069\000\156\004\070\000\156\004\071\000\156\004\072\000\156\004\
\\073\000\156\004\075\000\156\004\076\000\156\004\077\000\156\004\
\\079\000\156\004\080\000\156\004\081\000\156\004\083\000\156\004\
\\084\000\156\004\085\000\156\004\087\000\156\004\088\000\156\004\
\\089\000\156\004\091\000\156\004\092\000\156\004\093\000\156\004\
\\095\000\156\004\096\000\156\004\097\000\156\004\099\000\156\004\
\\100\000\156\004\104\000\156\004\106\000\156\004\107\000\156\004\
\\108\000\156\004\110\000\156\004\111\000\156\004\112\000\156\004\
\\114\000\156\004\115\000\156\004\116\000\156\004\118\000\156\004\
\\119\000\156\004\120\000\156\004\122\000\156\004\123\000\156\004\
\\124\000\156\004\126\000\156\004\127\000\156\004\128\000\156\004\
\\130\000\156\004\133\000\156\004\134\000\156\004\139\000\156\004\
\\140\000\156\004\142\000\156\004\143\000\156\004\145\000\156\004\
\\146\000\156\004\148\000\156\004\149\000\156\004\151\000\156\004\
\\152\000\156\004\153\000\156\004\154\000\156\004\163\000\156\004\
\\166\000\156\004\172\000\156\004\173\000\156\004\174\000\156\004\
\\175\000\156\004\176\000\156\004\179\000\156\004\180\000\156\004\
\\183\000\156\004\000\000\
\\001\000\002\000\157\004\003\000\157\004\004\000\157\004\005\000\157\004\
\\008\000\157\004\009\000\157\004\010\000\157\004\011\000\157\004\
\\012\000\157\004\013\000\157\004\014\000\157\004\017\000\157\004\
\\018\000\157\004\019\000\157\004\020\000\157\004\021\000\157\004\
\\022\000\157\004\023\000\157\004\024\000\157\004\025\000\157\004\
\\026\000\157\004\027\000\157\004\028\000\157\004\030\000\157\004\
\\031\000\157\004\036\000\157\004\037\000\157\004\044\000\157\004\
\\045\000\157\004\049\000\157\004\051\000\157\004\053\000\157\004\
\\055\000\157\004\057\000\157\004\058\000\157\004\059\000\157\004\
\\061\000\157\004\062\000\157\004\063\000\157\004\064\000\157\004\
\\065\000\157\004\066\000\157\004\067\000\157\004\068\000\157\004\
\\069\000\157\004\070\000\157\004\071\000\157\004\072\000\157\004\
\\073\000\157\004\075\000\157\004\076\000\157\004\077\000\157\004\
\\079\000\157\004\080\000\157\004\081\000\157\004\083\000\157\004\
\\084\000\157\004\085\000\157\004\087\000\157\004\088\000\157\004\
\\089\000\157\004\091\000\157\004\092\000\157\004\093\000\157\004\
\\095\000\157\004\096\000\157\004\097\000\157\004\099\000\157\004\
\\100\000\157\004\104\000\157\004\106\000\157\004\107\000\157\004\
\\108\000\157\004\110\000\157\004\111\000\157\004\112\000\157\004\
\\114\000\157\004\115\000\157\004\116\000\157\004\118\000\157\004\
\\119\000\157\004\120\000\157\004\122\000\157\004\123\000\157\004\
\\124\000\157\004\126\000\157\004\127\000\157\004\128\000\157\004\
\\130\000\157\004\133\000\157\004\134\000\157\004\139\000\157\004\
\\140\000\157\004\142\000\157\004\143\000\157\004\145\000\157\004\
\\146\000\157\004\148\000\157\004\149\000\157\004\151\000\157\004\
\\152\000\157\004\153\000\157\004\154\000\157\004\163\000\157\004\
\\166\000\157\004\172\000\157\004\173\000\157\004\174\000\157\004\
\\175\000\157\004\176\000\157\004\179\000\157\004\180\000\157\004\
\\183\000\157\004\000\000\
\\001\000\002\000\158\004\003\000\158\004\004\000\158\004\005\000\158\004\
\\008\000\158\004\009\000\158\004\010\000\158\004\011\000\158\004\
\\012\000\158\004\013\000\158\004\014\000\158\004\017\000\158\004\
\\018\000\158\004\019\000\158\004\020\000\158\004\021\000\158\004\
\\022\000\158\004\023\000\158\004\024\000\158\004\025\000\158\004\
\\026\000\158\004\027\000\158\004\028\000\158\004\030\000\158\004\
\\031\000\158\004\036\000\158\004\037\000\158\004\044\000\158\004\
\\045\000\158\004\049\000\158\004\051\000\158\004\053\000\158\004\
\\055\000\158\004\057\000\158\004\058\000\158\004\059\000\158\004\
\\061\000\158\004\062\000\158\004\063\000\158\004\064\000\158\004\
\\065\000\158\004\066\000\158\004\067\000\158\004\068\000\158\004\
\\069\000\158\004\070\000\158\004\071\000\158\004\072\000\158\004\
\\073\000\158\004\075\000\158\004\076\000\158\004\077\000\158\004\
\\079\000\158\004\080\000\158\004\081\000\158\004\083\000\158\004\
\\084\000\158\004\085\000\158\004\087\000\158\004\088\000\158\004\
\\089\000\158\004\091\000\158\004\092\000\158\004\093\000\158\004\
\\095\000\158\004\096\000\158\004\097\000\158\004\099\000\158\004\
\\100\000\158\004\104\000\158\004\106\000\158\004\107\000\158\004\
\\108\000\158\004\110\000\158\004\111\000\158\004\112\000\158\004\
\\114\000\158\004\115\000\158\004\116\000\158\004\118\000\158\004\
\\119\000\158\004\120\000\158\004\122\000\158\004\123\000\158\004\
\\124\000\158\004\126\000\158\004\127\000\158\004\128\000\158\004\
\\130\000\158\004\133\000\158\004\134\000\158\004\139\000\158\004\
\\140\000\158\004\142\000\158\004\143\000\158\004\145\000\158\004\
\\146\000\158\004\148\000\158\004\149\000\158\004\151\000\158\004\
\\152\000\158\004\153\000\158\004\154\000\158\004\163\000\158\004\
\\166\000\158\004\172\000\158\004\173\000\158\004\174\000\158\004\
\\175\000\158\004\176\000\158\004\179\000\158\004\180\000\158\004\
\\183\000\158\004\000\000\
\\001\000\002\000\159\004\003\000\159\004\004\000\159\004\005\000\159\004\
\\008\000\159\004\009\000\159\004\010\000\159\004\011\000\159\004\
\\012\000\159\004\013\000\159\004\014\000\159\004\017\000\159\004\
\\018\000\159\004\019\000\159\004\020\000\159\004\021\000\159\004\
\\022\000\159\004\023\000\159\004\024\000\159\004\025\000\159\004\
\\026\000\159\004\027\000\159\004\028\000\159\004\030\000\159\004\
\\031\000\159\004\036\000\159\004\037\000\159\004\044\000\159\004\
\\045\000\159\004\049\000\159\004\051\000\159\004\053\000\159\004\
\\055\000\159\004\057\000\159\004\058\000\159\004\059\000\159\004\
\\061\000\159\004\062\000\159\004\063\000\159\004\064\000\159\004\
\\065\000\159\004\066\000\159\004\067\000\159\004\068\000\159\004\
\\069\000\159\004\070\000\159\004\071\000\159\004\072\000\159\004\
\\073\000\159\004\075\000\159\004\076\000\159\004\077\000\159\004\
\\079\000\159\004\080\000\159\004\081\000\159\004\083\000\159\004\
\\084\000\159\004\085\000\159\004\087\000\159\004\088\000\159\004\
\\089\000\159\004\091\000\159\004\092\000\159\004\093\000\159\004\
\\095\000\159\004\096\000\159\004\097\000\159\004\099\000\159\004\
\\100\000\159\004\104\000\159\004\106\000\159\004\107\000\159\004\
\\108\000\159\004\110\000\159\004\111\000\159\004\112\000\159\004\
\\114\000\159\004\115\000\159\004\116\000\159\004\118\000\159\004\
\\119\000\159\004\120\000\159\004\122\000\159\004\123\000\159\004\
\\124\000\159\004\126\000\159\004\127\000\159\004\128\000\159\004\
\\130\000\159\004\133\000\159\004\134\000\159\004\139\000\159\004\
\\140\000\159\004\142\000\159\004\143\000\159\004\145\000\159\004\
\\146\000\159\004\148\000\159\004\149\000\159\004\151\000\159\004\
\\152\000\159\004\153\000\159\004\154\000\159\004\163\000\159\004\
\\166\000\159\004\172\000\159\004\173\000\159\004\174\000\159\004\
\\175\000\159\004\176\000\159\004\179\000\159\004\180\000\159\004\
\\183\000\159\004\000\000\
\\001\000\002\000\160\004\003\000\160\004\004\000\160\004\005\000\160\004\
\\008\000\160\004\009\000\160\004\010\000\160\004\011\000\160\004\
\\012\000\160\004\013\000\160\004\014\000\160\004\017\000\160\004\
\\018\000\160\004\019\000\160\004\020\000\160\004\021\000\160\004\
\\022\000\160\004\023\000\160\004\024\000\160\004\025\000\160\004\
\\026\000\160\004\027\000\160\004\028\000\160\004\030\000\160\004\
\\031\000\160\004\036\000\160\004\037\000\160\004\044\000\160\004\
\\045\000\160\004\049\000\160\004\051\000\160\004\053\000\160\004\
\\055\000\160\004\057\000\160\004\058\000\160\004\059\000\160\004\
\\061\000\160\004\062\000\160\004\063\000\160\004\064\000\160\004\
\\065\000\160\004\066\000\160\004\067\000\160\004\068\000\160\004\
\\069\000\160\004\070\000\160\004\071\000\160\004\072\000\160\004\
\\073\000\160\004\075\000\160\004\076\000\160\004\077\000\160\004\
\\079\000\160\004\080\000\160\004\081\000\160\004\083\000\160\004\
\\084\000\160\004\085\000\160\004\087\000\160\004\088\000\160\004\
\\089\000\160\004\091\000\160\004\092\000\160\004\093\000\160\004\
\\095\000\160\004\096\000\160\004\097\000\160\004\099\000\160\004\
\\100\000\160\004\104\000\160\004\106\000\160\004\107\000\160\004\
\\108\000\160\004\110\000\160\004\111\000\160\004\112\000\160\004\
\\114\000\160\004\115\000\160\004\116\000\160\004\118\000\160\004\
\\119\000\160\004\120\000\160\004\122\000\160\004\123\000\160\004\
\\124\000\160\004\126\000\160\004\127\000\160\004\128\000\160\004\
\\130\000\160\004\133\000\160\004\134\000\160\004\139\000\160\004\
\\140\000\160\004\142\000\160\004\143\000\160\004\145\000\160\004\
\\146\000\160\004\148\000\160\004\149\000\160\004\151\000\160\004\
\\152\000\160\004\153\000\160\004\154\000\160\004\163\000\160\004\
\\166\000\160\004\172\000\160\004\173\000\160\004\174\000\160\004\
\\175\000\160\004\176\000\160\004\179\000\160\004\180\000\160\004\
\\183\000\160\004\000\000\
\\001\000\002\000\161\004\003\000\161\004\004\000\161\004\005\000\161\004\
\\008\000\161\004\009\000\161\004\010\000\161\004\011\000\161\004\
\\012\000\161\004\013\000\161\004\014\000\161\004\017\000\161\004\
\\018\000\161\004\019\000\161\004\020\000\161\004\021\000\161\004\
\\022\000\161\004\023\000\161\004\024\000\161\004\025\000\161\004\
\\026\000\161\004\027\000\161\004\028\000\161\004\030\000\161\004\
\\031\000\161\004\036\000\161\004\037\000\161\004\044\000\161\004\
\\045\000\161\004\049\000\161\004\051\000\161\004\053\000\161\004\
\\055\000\161\004\057\000\161\004\058\000\161\004\059\000\161\004\
\\061\000\161\004\062\000\161\004\063\000\161\004\064\000\161\004\
\\065\000\161\004\066\000\161\004\067\000\161\004\068\000\161\004\
\\069\000\161\004\070\000\161\004\071\000\161\004\072\000\161\004\
\\073\000\161\004\075\000\161\004\076\000\161\004\077\000\161\004\
\\079\000\161\004\080\000\161\004\081\000\161\004\083\000\161\004\
\\084\000\161\004\085\000\161\004\087\000\161\004\088\000\161\004\
\\089\000\161\004\091\000\161\004\092\000\161\004\093\000\161\004\
\\095\000\161\004\096\000\161\004\097\000\161\004\099\000\161\004\
\\100\000\161\004\104\000\161\004\106\000\161\004\107\000\161\004\
\\108\000\161\004\110\000\161\004\111\000\161\004\112\000\161\004\
\\114\000\161\004\115\000\161\004\116\000\161\004\118\000\161\004\
\\119\000\161\004\120\000\161\004\122\000\161\004\123\000\161\004\
\\124\000\161\004\126\000\161\004\127\000\161\004\128\000\161\004\
\\130\000\161\004\133\000\161\004\134\000\161\004\139\000\161\004\
\\140\000\161\004\142\000\161\004\143\000\161\004\145\000\161\004\
\\146\000\161\004\148\000\161\004\149\000\161\004\151\000\161\004\
\\152\000\161\004\153\000\161\004\154\000\161\004\163\000\161\004\
\\166\000\161\004\172\000\161\004\173\000\161\004\174\000\161\004\
\\175\000\161\004\176\000\161\004\179\000\161\004\180\000\161\004\
\\183\000\161\004\000\000\
\\001\000\002\000\218\004\006\000\218\004\007\000\218\004\016\000\218\004\
\\033\000\218\004\035\000\218\004\067\000\218\004\162\000\096\006\
\\174\000\218\004\176\000\096\006\000\000\
\\001\000\002\000\039\005\003\000\039\005\004\000\039\005\005\000\039\005\
\\006\000\039\005\008\000\039\005\009\000\039\005\010\000\039\005\
\\011\000\039\005\012\000\039\005\013\000\039\005\014\000\039\005\
\\017\000\039\005\018\000\039\005\019\000\039\005\020\000\039\005\
\\021\000\039\005\022\000\039\005\023\000\039\005\024\000\039\005\
\\025\000\039\005\026\000\039\005\027\000\039\005\028\000\039\005\
\\030\000\039\005\031\000\039\005\032\000\039\005\033\000\039\005\
\\037\000\039\005\045\000\039\005\048\000\039\005\050\000\039\005\
\\051\000\039\005\053\000\039\005\054\000\039\005\055\000\039\005\
\\057\000\039\005\058\000\039\005\059\000\039\005\061\000\039\005\
\\062\000\039\005\063\000\039\005\064\000\039\005\065\000\039\005\
\\066\000\039\005\067\000\039\005\068\000\039\005\069\000\039\005\
\\070\000\039\005\071\000\039\005\072\000\039\005\073\000\039\005\
\\075\000\039\005\076\000\039\005\077\000\039\005\079\000\039\005\
\\080\000\039\005\081\000\039\005\083\000\039\005\084\000\039\005\
\\085\000\039\005\087\000\039\005\088\000\039\005\089\000\039\005\
\\091\000\039\005\092\000\039\005\093\000\039\005\095\000\039\005\
\\096\000\039\005\097\000\039\005\099\000\039\005\100\000\039\005\
\\101\000\039\005\104\000\039\005\106\000\039\005\107\000\039\005\
\\108\000\039\005\110\000\039\005\111\000\039\005\112\000\039\005\
\\114\000\039\005\115\000\039\005\116\000\039\005\118\000\039\005\
\\119\000\039\005\120\000\039\005\122\000\039\005\123\000\039\005\
\\124\000\039\005\126\000\039\005\127\000\039\005\128\000\039\005\
\\130\000\039\005\131\000\039\005\133\000\039\005\134\000\039\005\
\\135\000\039\005\136\000\039\005\137\000\039\005\138\000\039\005\
\\139\000\039\005\140\000\039\005\142\000\039\005\143\000\039\005\
\\144\000\039\005\145\000\039\005\146\000\039\005\147\000\039\005\
\\148\000\039\005\149\000\039\005\150\000\039\005\151\000\039\005\
\\152\000\039\005\153\000\039\005\154\000\039\005\156\000\039\005\
\\158\000\039\005\159\000\039\005\160\000\039\005\161\000\039\005\
\\162\000\039\005\163\000\039\005\166\000\039\005\169\000\039\005\
\\170\000\039\005\171\000\039\005\172\000\039\005\173\000\039\005\
\\174\000\039\005\175\000\039\005\176\000\039\005\177\000\039\005\
\\178\000\039\005\179\000\039\005\180\000\039\005\183\000\039\005\000\000\
\\001\000\002\000\039\005\003\000\039\005\004\000\039\005\005\000\039\005\
\\008\000\039\005\009\000\039\005\010\000\039\005\011\000\039\005\
\\012\000\039\005\013\000\039\005\014\000\039\005\017\000\039\005\
\\018\000\039\005\019\000\039\005\020\000\039\005\021\000\039\005\
\\022\000\039\005\023\000\039\005\024\000\039\005\025\000\039\005\
\\026\000\039\005\027\000\039\005\028\000\039\005\030\000\039\005\
\\031\000\039\005\035\000\039\005\037\000\039\005\044\000\113\001\
\\045\000\039\005\051\000\039\005\053\000\039\005\055\000\039\005\
\\057\000\039\005\058\000\039\005\059\000\039\005\061\000\039\005\
\\062\000\039\005\063\000\039\005\064\000\039\005\066\000\039\005\
\\067\000\039\005\070\000\039\005\071\000\039\005\072\000\039\005\
\\073\000\039\005\075\000\039\005\076\000\039\005\077\000\039\005\
\\079\000\039\005\080\000\039\005\081\000\039\005\083\000\039\005\
\\084\000\039\005\085\000\039\005\087\000\039\005\089\000\039\005\
\\091\000\039\005\092\000\039\005\093\000\039\005\095\000\039\005\
\\096\000\039\005\097\000\039\005\099\000\039\005\100\000\039\005\
\\101\000\039\005\104\000\039\005\106\000\039\005\108\000\039\005\
\\110\000\039\005\111\000\039\005\112\000\039\005\114\000\039\005\
\\115\000\039\005\116\000\039\005\118\000\039\005\119\000\039\005\
\\120\000\039\005\123\000\039\005\124\000\039\005\126\000\039\005\
\\127\000\039\005\128\000\039\005\130\000\039\005\131\000\039\005\
\\133\000\039\005\134\000\039\005\137\000\039\005\138\000\039\005\
\\139\000\039\005\140\000\039\005\142\000\039\005\143\000\039\005\
\\145\000\039\005\146\000\039\005\148\000\039\005\149\000\039\005\
\\151\000\039\005\152\000\039\005\153\000\039\005\154\000\039\005\
\\156\000\039\005\158\000\039\005\160\000\039\005\161\000\039\005\
\\162\000\039\005\166\000\039\005\170\000\039\005\171\000\039\005\
\\173\000\039\005\174\000\039\005\177\000\039\005\178\000\039\005\
\\179\000\039\005\180\000\039\005\183\000\039\005\000\000\
\\001\000\002\000\038\006\162\000\096\006\000\000\
\\001\000\002\000\130\000\000\000\
\\001\000\002\000\173\001\000\000\
\\001\000\002\000\243\001\003\000\129\000\004\000\128\000\005\000\127\000\
\\008\000\125\000\009\000\124\000\010\000\220\000\011\000\122\000\
\\012\000\219\000\013\000\120\000\017\000\119\000\018\000\118\000\
\\019\000\117\000\020\000\116\000\021\000\115\000\022\000\114\000\
\\023\000\113\000\024\000\112\000\025\000\111\000\026\000\110\000\
\\027\000\109\000\028\000\108\000\030\000\106\000\031\000\105\000\
\\037\000\102\000\045\000\218\000\051\000\217\000\055\000\216\000\
\\058\000\093\000\059\000\092\000\062\000\091\000\063\000\215\000\
\\064\000\214\000\066\000\088\000\067\000\087\000\070\000\086\000\
\\072\000\213\000\073\000\212\000\076\000\211\000\077\000\210\000\
\\080\000\209\000\081\000\208\000\084\000\207\000\085\000\206\000\
\\089\000\205\000\092\000\204\000\093\000\203\000\096\000\202\000\
\\097\000\201\000\100\000\071\000\104\000\200\000\108\000\199\000\
\\111\000\198\000\112\000\197\000\115\000\196\000\116\000\195\000\
\\119\000\063\000\120\000\194\000\123\000\193\000\124\000\192\000\
\\127\000\191\000\128\000\190\000\133\000\145\000\134\000\056\000\
\\135\000\055\000\137\000\053\000\139\000\144\000\140\000\051\000\
\\142\000\050\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\039\000\154\000\136\000\156\000\037\000\158\000\035\000\
\\173\000\033\000\174\000\032\000\176\000\242\001\179\000\031\000\
\\180\000\030\000\183\000\029\000\000\000\
\\001\000\002\000\056\002\000\000\
\\001\000\002\000\109\002\000\000\
\\001\000\002\000\120\002\000\000\
\\001\000\002\000\123\002\000\000\
\\001\000\002\000\045\003\131\000\248\000\160\000\247\000\166\000\246\000\
\\170\000\245\000\177\000\244\000\178\000\243\000\000\000\
\\001\000\002\000\058\003\000\000\
\\001\000\002\000\125\003\000\000\
\\001\000\002\000\169\003\000\000\
\\001\000\002\000\179\003\131\000\248\000\160\000\247\000\166\000\246\000\
\\170\000\245\000\177\000\244\000\178\000\243\000\000\000\
\\001\000\002\000\075\004\176\000\074\004\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\013\000\120\000\017\000\119\000\018\000\118\000\
\\019\000\117\000\020\000\116\000\021\000\115\000\022\000\114\000\
\\023\000\113\000\024\000\112\000\025\000\111\000\026\000\110\000\
\\027\000\109\000\028\000\108\000\029\000\107\000\030\000\106\000\
\\031\000\105\000\032\000\104\000\034\000\103\000\037\000\102\000\
\\038\000\101\000\039\000\100\000\045\000\099\000\048\000\098\000\
\\050\000\097\000\051\000\096\000\054\000\095\000\055\000\094\000\
\\058\000\093\000\059\000\092\000\062\000\091\000\063\000\090\000\
\\064\000\089\000\066\000\088\000\067\000\087\000\070\000\086\000\
\\072\000\085\000\073\000\084\000\076\000\083\000\077\000\082\000\
\\080\000\081\000\081\000\080\000\084\000\079\000\085\000\078\000\
\\088\000\077\000\089\000\076\000\092\000\075\000\093\000\074\000\
\\096\000\073\000\097\000\072\000\100\000\071\000\104\000\070\000\
\\107\000\069\000\108\000\068\000\111\000\067\000\112\000\066\000\
\\115\000\065\000\116\000\064\000\119\000\063\000\120\000\062\000\
\\123\000\061\000\124\000\060\000\127\000\059\000\128\000\058\000\
\\133\000\057\000\134\000\056\000\135\000\055\000\136\000\054\000\
\\137\000\053\000\139\000\052\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\144\000\048\000\145\000\047\000\146\000\046\000\
\\147\000\045\000\148\000\044\000\149\000\043\000\150\000\042\000\
\\151\000\041\000\152\000\040\000\153\000\039\000\154\000\038\000\
\\156\000\037\000\157\000\036\000\158\000\035\000\159\000\034\000\
\\173\000\033\000\174\000\032\000\179\000\031\000\180\000\030\000\
\\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\013\000\120\000\017\000\119\000\018\000\118\000\
\\019\000\117\000\020\000\116\000\021\000\115\000\022\000\114\000\
\\023\000\113\000\024\000\112\000\025\000\111\000\026\000\110\000\
\\027\000\109\000\028\000\108\000\030\000\106\000\031\000\105\000\
\\032\000\104\000\037\000\102\000\045\000\099\000\048\000\098\000\
\\050\000\097\000\051\000\096\000\054\000\095\000\055\000\094\000\
\\058\000\093\000\059\000\092\000\062\000\091\000\063\000\090\000\
\\064\000\089\000\066\000\088\000\067\000\087\000\070\000\086\000\
\\072\000\085\000\073\000\084\000\076\000\083\000\077\000\082\000\
\\080\000\081\000\081\000\080\000\084\000\079\000\085\000\078\000\
\\088\000\077\000\089\000\076\000\092\000\075\000\093\000\074\000\
\\096\000\073\000\097\000\072\000\100\000\071\000\104\000\070\000\
\\107\000\069\000\108\000\068\000\111\000\067\000\112\000\066\000\
\\115\000\065\000\116\000\064\000\119\000\063\000\120\000\062\000\
\\123\000\061\000\124\000\060\000\127\000\059\000\128\000\058\000\
\\133\000\057\000\134\000\056\000\135\000\055\000\136\000\054\000\
\\137\000\053\000\139\000\144\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\144\000\048\000\145\000\047\000\146\000\046\000\
\\147\000\045\000\148\000\044\000\149\000\043\000\150\000\042\000\
\\151\000\041\000\152\000\040\000\153\000\039\000\154\000\038\000\
\\156\000\037\000\158\000\035\000\159\000\022\001\173\000\033\000\
\\174\000\032\000\179\000\031\000\180\000\030\000\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\013\000\120\000\017\000\096\001\018\000\118\000\
\\019\000\117\000\020\000\116\000\021\000\115\000\022\000\114\000\
\\023\000\113\000\024\000\112\000\025\000\111\000\026\000\110\000\
\\027\000\109\000\028\000\108\000\030\000\106\000\031\000\105\000\
\\032\000\104\000\037\000\102\000\045\000\099\000\048\000\098\000\
\\050\000\097\000\051\000\096\000\054\000\095\000\055\000\094\000\
\\058\000\093\000\059\000\092\000\062\000\091\000\063\000\090\000\
\\064\000\089\000\066\000\088\000\067\000\087\000\068\000\095\001\
\\070\000\086\000\072\000\085\000\073\000\084\000\076\000\083\000\
\\077\000\082\000\080\000\081\000\081\000\080\000\084\000\079\000\
\\085\000\078\000\088\000\077\000\089\000\076\000\092\000\075\000\
\\093\000\074\000\096\000\073\000\097\000\072\000\100\000\071\000\
\\104\000\070\000\107\000\069\000\108\000\068\000\111\000\067\000\
\\112\000\066\000\115\000\065\000\116\000\064\000\119\000\063\000\
\\120\000\062\000\123\000\061\000\124\000\060\000\127\000\059\000\
\\128\000\058\000\133\000\057\000\134\000\056\000\135\000\055\000\
\\136\000\054\000\137\000\053\000\139\000\144\000\140\000\051\000\
\\142\000\050\000\143\000\049\000\144\000\048\000\145\000\047\000\
\\146\000\046\000\147\000\045\000\148\000\044\000\149\000\043\000\
\\150\000\042\000\151\000\041\000\152\000\040\000\153\000\039\000\
\\154\000\038\000\156\000\037\000\158\000\035\000\159\000\022\001\
\\173\000\033\000\174\000\032\000\179\000\031\000\180\000\030\000\
\\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\008\000\125\000\
\\009\000\124\000\010\000\220\000\011\000\122\000\012\000\219\000\
\\013\000\120\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\037\000\102\000\
\\045\000\218\000\051\000\217\000\055\000\216\000\058\000\093\000\
\\059\000\092\000\062\000\091\000\063\000\215\000\064\000\214\000\
\\066\000\088\000\067\000\087\000\070\000\086\000\072\000\213\000\
\\073\000\212\000\076\000\211\000\077\000\210\000\080\000\209\000\
\\081\000\208\000\084\000\207\000\085\000\206\000\089\000\205\000\
\\092\000\204\000\093\000\203\000\096\000\202\000\097\000\201\000\
\\100\000\071\000\104\000\200\000\108\000\199\000\111\000\198\000\
\\112\000\197\000\115\000\196\000\116\000\195\000\119\000\063\000\
\\120\000\194\000\123\000\193\000\124\000\192\000\127\000\191\000\
\\128\000\190\000\133\000\145\000\134\000\056\000\135\000\055\000\
\\137\000\053\000\139\000\144\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\039\000\
\\154\000\136\000\156\000\037\000\158\000\035\000\173\000\033\000\
\\174\000\032\000\175\000\013\001\179\000\031\000\180\000\030\000\
\\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\008\000\125\000\
\\009\000\124\000\010\000\220\000\011\000\122\000\012\000\219\000\
\\013\000\120\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\037\000\102\000\
\\045\000\218\000\051\000\217\000\055\000\216\000\058\000\093\000\
\\059\000\092\000\062\000\091\000\063\000\215\000\064\000\214\000\
\\066\000\088\000\067\000\087\000\070\000\086\000\072\000\213\000\
\\073\000\212\000\076\000\211\000\077\000\210\000\080\000\209\000\
\\081\000\208\000\084\000\207\000\085\000\206\000\089\000\205\000\
\\092\000\204\000\093\000\203\000\096\000\202\000\097\000\201\000\
\\100\000\071\000\104\000\200\000\108\000\199\000\111\000\198\000\
\\112\000\197\000\115\000\196\000\116\000\195\000\119\000\063\000\
\\120\000\194\000\123\000\193\000\124\000\192\000\127\000\191\000\
\\128\000\190\000\133\000\145\000\134\000\056\000\135\000\055\000\
\\137\000\053\000\139\000\144\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\039\000\
\\154\000\136\000\156\000\037\000\158\000\035\000\173\000\033\000\
\\174\000\032\000\175\000\089\001\179\000\031\000\180\000\030\000\
\\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\008\000\125\000\
\\009\000\124\000\010\000\220\000\011\000\122\000\012\000\219\000\
\\013\000\120\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\037\000\102\000\
\\045\000\218\000\051\000\217\000\055\000\216\000\058\000\093\000\
\\059\000\092\000\062\000\091\000\063\000\215\000\064\000\214\000\
\\066\000\088\000\067\000\087\000\070\000\086\000\072\000\213\000\
\\073\000\212\000\076\000\211\000\077\000\210\000\080\000\209\000\
\\081\000\208\000\084\000\207\000\085\000\206\000\089\000\205\000\
\\092\000\204\000\093\000\203\000\096\000\202\000\097\000\201\000\
\\100\000\071\000\104\000\200\000\108\000\199\000\111\000\198\000\
\\112\000\197\000\115\000\196\000\116\000\195\000\119\000\063\000\
\\120\000\194\000\123\000\193\000\124\000\192\000\127\000\191\000\
\\128\000\190\000\133\000\145\000\134\000\056\000\135\000\055\000\
\\137\000\053\000\139\000\144\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\039\000\
\\154\000\136\000\156\000\037\000\158\000\035\000\173\000\033\000\
\\174\000\032\000\176\000\016\001\179\000\031\000\180\000\030\000\
\\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\008\000\125\000\
\\009\000\124\000\010\000\220\000\011\000\122\000\012\000\219\000\
\\013\000\120\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\037\000\102\000\
\\045\000\218\000\051\000\217\000\055\000\216\000\058\000\093\000\
\\059\000\092\000\062\000\091\000\063\000\215\000\064\000\214\000\
\\066\000\088\000\067\000\087\000\070\000\086\000\072\000\213\000\
\\073\000\212\000\076\000\211\000\077\000\210\000\080\000\209\000\
\\081\000\208\000\084\000\207\000\085\000\206\000\089\000\205\000\
\\092\000\204\000\093\000\203\000\096\000\202\000\097\000\201\000\
\\100\000\071\000\104\000\200\000\108\000\199\000\111\000\198\000\
\\112\000\197\000\115\000\196\000\116\000\195\000\119\000\063\000\
\\120\000\194\000\123\000\193\000\124\000\192\000\127\000\191\000\
\\128\000\190\000\133\000\145\000\134\000\056\000\135\000\055\000\
\\137\000\053\000\139\000\144\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\039\000\
\\154\000\136\000\156\000\037\000\158\000\035\000\173\000\033\000\
\\174\000\032\000\179\000\031\000\180\000\030\000\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\008\000\125\000\
\\009\000\124\000\010\000\220\000\011\000\122\000\012\000\219\000\
\\013\000\120\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\037\000\102\000\
\\045\000\218\000\051\000\217\000\055\000\216\000\058\000\093\000\
\\059\000\092\000\062\000\091\000\063\000\215\000\064\000\214\000\
\\066\000\088\000\067\000\087\000\070\000\086\000\072\000\213\000\
\\073\000\212\000\076\000\211\000\077\000\210\000\080\000\209\000\
\\081\000\208\000\084\000\207\000\085\000\206\000\089\000\205\000\
\\092\000\204\000\093\000\203\000\096\000\202\000\097\000\201\000\
\\100\000\071\000\104\000\200\000\108\000\199\000\111\000\198\000\
\\112\000\197\000\115\000\196\000\116\000\195\000\119\000\063\000\
\\120\000\194\000\123\000\193\000\124\000\192\000\127\000\191\000\
\\128\000\190\000\133\000\145\000\134\000\189\000\137\000\053\000\
\\139\000\144\000\140\000\051\000\142\000\050\000\143\000\049\000\
\\145\000\143\000\146\000\142\000\148\000\141\000\149\000\140\000\
\\151\000\139\000\152\000\138\000\153\000\137\000\154\000\136\000\
\\156\000\037\000\158\000\035\000\173\000\033\000\174\000\032\000\
\\179\000\031\000\180\000\030\000\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\008\000\125\000\
\\009\000\124\000\010\000\220\000\011\000\122\000\012\000\219\000\
\\013\000\120\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\037\000\102\000\
\\045\000\218\000\051\000\217\000\055\000\216\000\058\000\052\001\
\\059\000\092\000\063\000\215\000\064\000\214\000\067\000\087\000\
\\070\000\086\000\072\000\213\000\073\000\212\000\076\000\211\000\
\\077\000\210\000\080\000\209\000\081\000\208\000\084\000\207\000\
\\085\000\206\000\089\000\205\000\092\000\204\000\093\000\203\000\
\\096\000\202\000\097\000\201\000\100\000\071\000\104\000\200\000\
\\108\000\199\000\111\000\198\000\112\000\197\000\115\000\196\000\
\\116\000\195\000\120\000\194\000\123\000\193\000\124\000\192\000\
\\127\000\191\000\128\000\190\000\133\000\145\000\134\000\189\000\
\\137\000\053\000\139\000\144\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\156\000\037\000\158\000\035\000\173\000\033\000\
\\174\000\032\000\179\000\031\000\180\000\030\000\183\000\029\000\000\000\
\\001\000\003\000\129\000\004\000\128\000\005\000\127\000\008\000\125\000\
\\009\000\124\000\010\000\220\000\011\000\122\000\012\000\219\000\
\\017\000\119\000\018\000\118\000\019\000\117\000\020\000\116\000\
\\021\000\115\000\022\000\114\000\023\000\113\000\024\000\112\000\
\\025\000\111\000\026\000\110\000\027\000\109\000\028\000\108\000\
\\030\000\106\000\031\000\105\000\037\000\102\000\045\000\218\000\
\\051\000\217\000\055\000\216\000\059\000\092\000\063\000\215\000\
\\064\000\214\000\067\000\087\000\070\000\086\000\073\000\212\000\
\\077\000\210\000\081\000\208\000\085\000\206\000\089\000\205\000\
\\093\000\203\000\097\000\201\000\100\000\071\000\104\000\200\000\
\\108\000\199\000\112\000\197\000\116\000\195\000\120\000\194\000\
\\124\000\192\000\128\000\190\000\133\000\145\000\134\000\189\000\
\\139\000\144\000\140\000\051\000\142\000\050\000\143\000\049\000\
\\145\000\143\000\146\000\142\000\148\000\141\000\149\000\140\000\
\\151\000\139\000\152\000\138\000\153\000\137\000\154\000\136\000\
\\173\000\033\000\174\000\032\000\179\000\031\000\180\000\030\000\
\\183\000\029\000\000\000\
\\001\000\004\000\128\000\005\000\127\000\006\000\147\001\007\000\146\001\
\\133\000\145\000\139\000\144\000\143\000\049\000\145\000\143\000\
\\146\000\142\000\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\000\000\
\\001\000\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\035\000\033\002\045\000\174\000\051\000\173\000\
\\055\000\172\000\058\000\238\001\059\000\092\000\062\000\237\001\
\\063\000\171\000\064\000\170\000\066\000\236\001\067\000\051\001\
\\070\000\050\001\072\000\085\000\073\000\168\000\076\000\083\000\
\\077\000\166\000\080\000\081\000\081\000\164\000\084\000\079\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\075\000\
\\093\000\159\000\096\000\073\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\067\000\112\000\153\000\
\\115\000\065\000\116\000\151\000\119\000\235\001\120\000\150\000\
\\123\000\061\000\124\000\148\000\127\000\059\000\128\000\146\000\
\\133\000\145\000\139\000\144\000\143\000\049\000\145\000\143\000\
\\146\000\142\000\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\163\000\048\001\
\\174\000\047\001\179\000\046\001\000\000\
\\001\000\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\052\001\063\000\171\000\064\000\170\000\067\000\051\001\
\\070\000\050\001\072\000\085\000\073\000\168\000\076\000\083\000\
\\077\000\166\000\080\000\081\000\081\000\164\000\084\000\079\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\075\000\
\\093\000\159\000\096\000\073\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\067\000\112\000\153\000\
\\115\000\065\000\116\000\151\000\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\147\000\049\001\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\163\000\048\001\
\\174\000\047\001\179\000\046\001\000\000\
\\001\000\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\052\001\063\000\171\000\064\000\170\000\067\000\051\001\
\\070\000\050\001\072\000\085\000\073\000\168\000\076\000\083\000\
\\077\000\166\000\080\000\081\000\081\000\164\000\084\000\079\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\075\000\
\\093\000\159\000\096\000\073\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\067\000\112\000\153\000\
\\115\000\065\000\116\000\151\000\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\175\000\202\001\179\000\046\001\000\000\
\\001\000\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\052\001\063\000\171\000\064\000\170\000\067\000\051\001\
\\070\000\050\001\072\000\085\000\073\000\168\000\076\000\083\000\
\\077\000\166\000\080\000\081\000\081\000\164\000\084\000\079\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\075\000\
\\093\000\159\000\096\000\073\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\067\000\112\000\153\000\
\\115\000\065\000\116\000\151\000\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\175\000\207\001\179\000\046\001\000\000\
\\001\000\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\052\001\063\000\171\000\064\000\170\000\067\000\051\001\
\\070\000\050\001\072\000\085\000\073\000\168\000\076\000\083\000\
\\077\000\166\000\080\000\081\000\081\000\164\000\084\000\079\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\075\000\
\\093\000\159\000\096\000\073\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\067\000\112\000\153\000\
\\115\000\065\000\116\000\151\000\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\176\000\204\001\179\000\046\001\000\000\
\\001\000\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\052\001\063\000\171\000\064\000\170\000\067\000\051\001\
\\070\000\050\001\072\000\085\000\073\000\168\000\076\000\083\000\
\\077\000\166\000\080\000\081\000\081\000\164\000\084\000\079\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\075\000\
\\093\000\159\000\096\000\073\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\067\000\112\000\153\000\
\\115\000\065\000\116\000\151\000\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\179\000\046\001\000\000\
\\001\000\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\238\001\059\000\092\000\062\000\237\001\063\000\171\000\
\\064\000\170\000\066\000\236\001\067\000\051\001\070\000\050\001\
\\072\000\085\000\073\000\168\000\076\000\083\000\077\000\166\000\
\\080\000\081\000\081\000\164\000\084\000\079\000\085\000\162\000\
\\088\000\077\000\089\000\161\000\092\000\075\000\093\000\159\000\
\\096\000\073\000\097\000\157\000\104\000\156\000\107\000\069\000\
\\108\000\155\000\111\000\067\000\112\000\153\000\115\000\065\000\
\\116\000\151\000\119\000\235\001\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\179\000\046\001\000\000\
\\001\000\004\000\128\000\005\000\127\000\010\000\176\000\011\000\122\000\
\\012\000\061\004\045\000\174\000\051\000\173\000\055\000\172\000\
\\063\000\171\000\064\000\170\000\072\000\169\000\073\000\168\000\
\\076\000\167\000\077\000\166\000\080\000\165\000\081\000\164\000\
\\084\000\163\000\085\000\162\000\088\000\077\000\089\000\161\000\
\\092\000\160\000\093\000\159\000\096\000\158\000\097\000\157\000\
\\104\000\156\000\107\000\069\000\108\000\155\000\111\000\154\000\
\\112\000\153\000\115\000\152\000\116\000\151\000\120\000\150\000\
\\123\000\149\000\124\000\148\000\127\000\147\000\128\000\146\000\
\\133\000\145\000\139\000\144\000\143\000\049\000\145\000\143\000\
\\146\000\142\000\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\000\000\
\\001\000\004\000\128\000\005\000\127\000\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\000\000\
\\001\000\004\000\128\000\005\000\127\000\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\157\000\245\002\159\000\244\002\000\000\
\\001\000\004\000\128\000\005\000\127\000\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\159\000\165\003\000\000\
\\001\000\004\000\128\000\006\000\147\001\007\000\146\001\016\000\145\001\
\\017\000\084\001\040\000\214\001\067\000\144\001\068\000\213\001\
\\133\000\145\000\139\000\144\000\143\000\049\000\145\000\143\000\
\\146\000\142\000\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\174\000\143\001\000\000\
\\001\000\004\000\128\000\006\000\147\001\007\000\146\001\016\000\145\001\
\\017\000\084\001\040\000\214\001\067\000\144\001\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\174\000\143\001\000\000\
\\001\000\004\000\128\000\006\000\147\001\007\000\146\001\016\000\145\001\
\\017\000\084\001\067\000\144\001\068\000\042\002\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\174\000\143\001\000\000\
\\001\000\004\000\128\000\006\000\147\001\007\000\146\001\016\000\145\001\
\\017\000\084\001\067\000\144\001\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\174\000\143\001\000\000\
\\001\000\004\000\128\000\008\000\177\000\010\000\176\000\012\000\175\000\
\\045\000\174\000\051\000\173\000\055\000\172\000\059\000\092\000\
\\063\000\171\000\064\000\170\000\072\000\169\000\073\000\168\000\
\\076\000\167\000\077\000\166\000\080\000\165\000\081\000\164\000\
\\084\000\163\000\085\000\162\000\088\000\077\000\089\000\161\000\
\\092\000\160\000\093\000\159\000\096\000\158\000\097\000\157\000\
\\104\000\156\000\107\000\069\000\108\000\155\000\111\000\154\000\
\\112\000\153\000\115\000\152\000\116\000\151\000\120\000\150\000\
\\123\000\149\000\124\000\148\000\127\000\147\000\128\000\146\000\
\\133\000\145\000\139\000\144\000\143\000\049\000\145\000\143\000\
\\146\000\142\000\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\000\000\
\\001\000\004\000\128\000\010\000\176\000\012\000\190\001\045\000\174\000\
\\051\000\173\000\055\000\172\000\059\000\092\000\063\000\171\000\
\\064\000\170\000\072\000\169\000\073\000\168\000\076\000\167\000\
\\077\000\166\000\080\000\165\000\081\000\164\000\084\000\163\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\160\000\
\\093\000\159\000\096\000\158\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\154\000\112\000\153\000\
\\115\000\152\000\116\000\151\000\120\000\150\000\123\000\149\000\
\\124\000\148\000\127\000\147\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\147\000\189\001\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\000\000\
\\001\000\004\000\128\000\010\000\176\000\012\000\193\001\045\000\174\000\
\\051\000\173\000\055\000\172\000\059\000\092\000\063\000\171\000\
\\064\000\170\000\072\000\169\000\073\000\168\000\076\000\167\000\
\\077\000\166\000\080\000\165\000\081\000\164\000\084\000\163\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\160\000\
\\093\000\159\000\096\000\158\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\154\000\112\000\153\000\
\\115\000\152\000\116\000\151\000\120\000\150\000\123\000\149\000\
\\124\000\148\000\127\000\147\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\000\000\
\\001\000\004\000\128\000\010\000\176\000\012\000\071\002\045\000\174\000\
\\051\000\173\000\055\000\172\000\059\000\092\000\063\000\171\000\
\\064\000\170\000\072\000\169\000\073\000\168\000\076\000\167\000\
\\077\000\166\000\080\000\165\000\081\000\164\000\084\000\163\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\160\000\
\\093\000\159\000\096\000\158\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\154\000\112\000\153\000\
\\115\000\152\000\116\000\151\000\120\000\150\000\123\000\149\000\
\\124\000\148\000\127\000\147\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\000\000\
\\001\000\004\000\128\000\010\000\200\002\012\000\199\002\045\000\196\002\
\\051\000\193\002\055\000\192\002\059\000\191\002\063\000\190\002\
\\064\000\189\002\072\000\188\002\073\000\187\002\076\000\186\002\
\\077\000\185\002\080\000\184\002\081\000\183\002\084\000\182\002\
\\085\000\181\002\088\000\180\002\089\000\179\002\092\000\178\002\
\\093\000\177\002\096\000\176\002\097\000\175\002\104\000\174\002\
\\107\000\173\002\108\000\172\002\111\000\171\002\112\000\170\002\
\\116\000\169\002\120\000\168\002\123\000\167\002\124\000\166\002\
\\127\000\165\002\128\000\164\002\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\000\000\
\\001\000\004\000\128\000\017\000\084\001\035\000\033\002\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\000\000\
\\001\000\004\000\128\000\017\000\084\001\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\000\000\
\\001\000\004\000\128\000\017\000\135\002\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\000\000\
\\001\000\004\000\128\000\035\000\033\002\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\000\000\
\\001\000\004\000\128\000\067\000\138\003\133\000\145\000\139\000\144\000\
\\143\000\049\000\145\000\143\000\146\000\142\000\148\000\141\000\
\\149\000\140\000\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\000\000\
\\001\000\004\000\128\000\133\000\145\000\139\000\144\000\143\000\049\000\
\\145\000\143\000\146\000\142\000\148\000\141\000\149\000\140\000\
\\151\000\139\000\152\000\138\000\153\000\137\000\154\000\136\000\000\000\
\\001\000\005\000\127\000\009\000\124\000\011\000\122\000\012\000\167\001\
\\017\000\119\000\018\000\118\000\019\000\117\000\020\000\116\000\
\\021\000\115\000\022\000\114\000\023\000\113\000\024\000\112\000\
\\025\000\111\000\026\000\110\000\027\000\109\000\028\000\108\000\
\\030\000\106\000\031\000\105\000\037\000\102\000\067\000\087\000\
\\070\000\086\000\100\000\071\000\134\000\189\000\140\000\051\000\
\\142\000\050\000\173\000\033\000\174\000\032\000\179\000\031\000\
\\180\000\030\000\183\000\029\000\000\000\
\\001\000\006\000\060\001\000\000\
\\001\000\006\000\110\001\000\000\
\\001\000\006\000\112\001\147\000\045\000\000\000\
\\001\000\006\000\121\001\000\000\
\\001\000\006\000\147\001\007\000\146\001\000\000\
\\001\000\006\000\147\001\007\000\146\001\008\000\210\002\016\000\145\001\
\\067\000\144\001\174\000\143\001\000\000\
\\001\000\006\000\147\001\007\000\146\001\016\000\145\001\067\000\144\001\
\\174\000\143\001\000\000\
\\001\000\006\000\226\001\000\000\
\\001\000\006\000\064\002\034\000\063\002\000\000\
\\001\000\006\000\150\002\000\000\
\\001\000\006\000\021\003\000\000\
\\001\000\006\000\022\003\000\000\
\\001\000\006\000\023\003\000\000\
\\001\000\006\000\071\003\034\000\063\002\000\000\
\\001\000\006\000\106\003\000\000\
\\001\000\006\000\023\004\007\000\146\001\016\000\145\001\034\000\063\002\
\\067\000\144\001\174\000\143\001\000\000\
\\001\000\006\000\079\004\000\000\
\\001\000\008\000\103\001\000\000\
\\001\000\008\000\141\002\009\000\124\000\000\000\
\\001\000\008\000\210\002\000\000\
\\001\000\008\000\104\003\000\000\
\\001\000\012\000\215\004\035\000\052\005\043\000\215\004\101\000\052\005\
\\138\000\052\005\166\000\215\004\167\000\215\004\168\000\215\004\
\\174\000\215\004\176\000\215\004\000\000\
\\001\000\012\000\216\004\035\000\111\004\043\000\216\004\044\000\168\004\
\\074\000\006\001\078\000\005\001\082\000\004\001\086\000\003\001\
\\090\000\002\001\098\000\001\001\101\000\111\004\102\000\000\001\
\\109\000\255\000\113\000\254\000\117\000\253\000\121\000\252\000\
\\125\000\251\000\129\000\250\000\138\000\111\004\166\000\216\004\
\\167\000\216\004\168\000\216\004\174\000\216\004\176\000\216\004\000\000\
\\001\000\014\000\138\004\044\000\189\005\049\000\189\005\053\000\138\004\
\\057\000\138\004\061\000\138\004\065\000\138\004\069\000\189\005\
\\075\000\138\004\079\000\138\004\083\000\138\004\087\000\138\004\
\\091\000\138\004\095\000\138\004\099\000\138\004\106\000\138\004\
\\110\000\138\004\114\000\138\004\118\000\138\004\122\000\189\005\
\\126\000\138\004\130\000\138\004\166\000\189\005\000\000\
\\001\000\014\000\138\004\044\000\192\005\049\000\192\005\053\000\138\004\
\\057\000\138\004\061\000\138\004\065\000\138\004\069\000\192\005\
\\075\000\138\004\079\000\138\004\083\000\138\004\087\000\138\004\
\\091\000\138\004\095\000\138\004\099\000\138\004\106\000\138\004\
\\110\000\138\004\114\000\138\004\118\000\138\004\122\000\192\005\
\\126\000\138\004\130\000\138\004\166\000\192\005\000\000\
\\001\000\014\000\240\000\053\000\239\000\057\000\238\000\061\000\237\000\
\\069\000\036\003\075\000\235\000\079\000\234\000\083\000\233\000\
\\087\000\232\000\091\000\231\000\095\000\230\000\099\000\229\000\
\\106\000\228\000\110\000\227\000\114\000\226\000\118\000\225\000\
\\126\000\224\000\130\000\223\000\000\000\
\\001\000\014\000\240\000\053\000\239\000\057\000\238\000\061\000\237\000\
\\075\000\235\000\079\000\234\000\083\000\233\000\087\000\232\000\
\\091\000\231\000\095\000\230\000\099\000\229\000\106\000\228\000\
\\110\000\227\000\114\000\226\000\118\000\225\000\122\000\035\003\
\\126\000\224\000\130\000\223\000\000\000\
\\001\000\014\000\240\000\053\000\239\000\057\000\238\000\061\000\038\003\
\\065\000\037\003\075\000\235\000\079\000\234\000\083\000\233\000\
\\087\000\232\000\091\000\231\000\095\000\230\000\099\000\229\000\
\\106\000\228\000\110\000\227\000\114\000\226\000\118\000\225\000\
\\126\000\224\000\130\000\223\000\000\000\
\\001\000\014\000\240\000\053\000\239\000\057\000\238\000\061\000\040\003\
\\065\000\039\003\075\000\235\000\079\000\234\000\083\000\233\000\
\\087\000\232\000\091\000\231\000\095\000\230\000\099\000\229\000\
\\106\000\228\000\110\000\227\000\114\000\226\000\118\000\225\000\
\\126\000\224\000\130\000\223\000\000\000\
\\001\000\016\000\027\002\000\000\
\\001\000\017\000\068\001\000\000\
\\001\000\030\000\025\001\000\000\
\\001\000\030\000\028\001\000\000\
\\001\000\030\000\227\001\101\000\182\000\138\000\181\000\000\000\
\\001\000\030\000\048\002\100\000\047\002\101\000\046\002\000\000\
\\001\000\033\000\179\000\164\000\021\002\165\000\020\002\000\000\
\\001\000\033\000\180\000\164\000\111\003\000\000\
\\001\000\035\000\183\000\101\000\182\000\138\000\181\000\000\000\
\\001\000\035\000\033\002\044\000\148\003\113\000\147\003\000\000\
\\001\000\035\000\033\002\044\000\150\003\113\000\149\003\000\000\
\\001\000\035\000\033\002\172\000\219\002\176\000\218\002\000\000\
\\001\000\035\000\033\002\172\000\117\003\176\000\218\002\000\000\
\\001\000\036\000\199\001\044\000\198\001\166\000\197\001\000\000\
\\001\000\036\000\199\001\044\000\245\001\049\000\244\001\166\000\197\001\000\000\
\\001\000\036\000\199\001\044\000\084\002\166\000\197\001\000\000\
\\001\000\036\000\199\001\049\000\244\001\166\000\197\001\000\000\
\\001\000\036\000\199\001\059\000\083\002\166\000\197\001\172\000\082\002\
\\176\000\081\002\000\000\
\\001\000\036\000\199\001\166\000\197\001\172\000\178\003\175\000\177\003\000\000\
\\001\000\036\000\091\002\049\000\222\004\068\000\141\005\166\000\090\002\
\\172\000\141\005\000\000\
\\001\000\041\000\099\002\042\000\098\002\132\000\097\002\000\000\
\\001\000\043\000\247\001\000\000\
\\001\000\043\000\031\002\000\000\
\\001\000\043\000\049\002\000\000\
\\001\000\043\000\232\002\000\000\
\\001\000\043\000\112\003\000\000\
\\001\000\043\000\122\003\000\000\
\\001\000\043\000\171\003\000\000\
\\001\000\043\000\239\003\000\000\
\\001\000\043\000\046\004\000\000\
\\001\000\043\000\080\004\000\000\
\\001\000\043\000\084\004\166\000\133\003\167\000\132\003\168\000\131\003\000\000\
\\001\000\043\000\100\004\000\000\
\\001\000\044\000\249\000\000\000\
\\001\000\044\000\019\002\000\000\
\\001\000\044\000\019\002\067\000\018\002\000\000\
\\001\000\044\000\025\002\045\000\024\002\000\000\
\\001\000\044\000\061\002\067\000\060\002\000\000\
\\001\000\044\000\095\002\045\000\094\002\000\000\
\\001\000\044\000\121\002\000\000\
\\001\000\044\000\144\002\067\000\143\002\000\000\
\\001\000\044\000\147\002\067\000\146\002\000\000\
\\001\000\044\000\205\002\045\000\024\002\000\000\
\\001\000\044\000\213\002\000\000\
\\001\000\044\000\249\002\000\000\
\\001\000\044\000\253\002\000\000\
\\001\000\044\000\017\003\000\000\
\\001\000\044\000\025\003\000\000\
\\001\000\044\000\030\003\049\000\029\003\000\000\
\\001\000\044\000\144\003\000\000\
\\001\000\044\000\145\003\000\000\
\\001\000\044\000\162\003\067\000\161\003\000\000\
\\001\000\045\000\194\003\000\000\
\\001\000\045\000\195\003\000\000\
\\001\000\045\000\000\004\000\000\
\\001\000\045\000\054\004\000\000\
\\001\000\047\000\148\002\000\000\
\\001\000\049\000\089\002\000\000\
\\001\000\049\000\029\003\000\000\
\\001\000\061\000\006\002\065\000\005\002\000\000\
\\001\000\061\000\008\002\065\000\007\002\000\000\
\\001\000\067\000\247\002\000\000\
\\001\000\067\000\138\003\000\000\
\\001\000\068\000\174\001\000\000\
\\001\000\068\000\255\001\000\000\
\\001\000\068\000\000\002\000\000\
\\001\000\068\000\086\002\000\000\
\\001\000\068\000\222\002\000\000\
\\001\000\068\000\059\003\000\000\
\\001\000\068\000\124\003\000\000\
\\001\000\068\000\184\003\000\000\
\\001\000\068\000\185\003\000\000\
\\001\000\068\000\001\004\000\000\
\\001\000\068\000\052\004\000\000\
\\001\000\068\000\070\004\000\000\
\\001\000\069\000\004\002\000\000\
\\001\000\120\000\148\001\000\000\
\\001\000\120\000\225\002\000\000\
\\001\000\122\000\250\001\000\000\
\\001\000\131\000\251\004\135\000\044\005\160\000\251\004\166\000\251\004\
\\170\000\251\004\172\000\251\004\175\000\251\004\177\000\251\004\
\\178\000\251\004\000\000\
\\001\000\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\172\000\172\001\176\000\171\001\177\000\244\000\178\000\243\000\000\000\
\\001\000\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\172\000\172\001\177\000\244\000\178\000\243\000\000\000\
\\001\000\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\176\000\119\002\177\000\244\000\178\000\243\000\000\000\
\\001\000\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\176\000\101\004\177\000\244\000\178\000\243\000\000\000\
\\001\000\132\000\160\003\000\000\
\\001\000\135\000\253\001\000\000\
\\001\000\136\000\033\003\148\000\032\003\149\000\031\003\000\000\
\\001\000\136\000\157\003\148\000\156\003\149\000\155\003\000\000\
\\001\000\136\000\174\003\000\000\
\\001\000\136\000\175\003\000\000\
\\001\000\136\000\010\004\000\000\
\\001\000\136\000\011\004\000\000\
\\001\000\136\000\015\004\148\000\014\004\149\000\013\004\000\000\
\\001\000\136\000\067\004\000\000\
\\001\000\136\000\068\004\000\000\
\\001\000\141\000\181\001\000\000\
\\001\000\141\000\055\002\000\000\
\\001\000\141\000\231\002\000\000\
\\001\000\141\000\241\003\000\000\
\\001\000\141\000\252\003\000\000\
\\001\000\141\000\071\004\000\000\
\\001\000\141\000\083\004\000\000\
\\001\000\143\000\051\003\000\000\
\\001\000\166\000\073\002\000\000\
\\001\000\166\000\074\002\000\000\
\\001\000\166\000\224\002\000\000\
\\001\000\166\000\063\003\000\000\
\\001\000\166\000\073\003\000\000\
\\001\000\166\000\074\003\000\000\
\\001\000\166\000\075\003\000\000\
\\001\000\166\000\076\003\000\000\
\\001\000\166\000\077\003\000\000\
\\001\000\166\000\078\003\000\000\
\\001\000\166\000\079\003\000\000\
\\001\000\166\000\080\003\000\000\
\\001\000\166\000\081\003\000\000\
\\001\000\166\000\082\003\000\000\
\\001\000\166\000\083\003\000\000\
\\001\000\166\000\084\003\000\000\
\\001\000\166\000\085\003\000\000\
\\001\000\166\000\086\003\000\000\
\\001\000\166\000\087\003\000\000\
\\001\000\166\000\088\003\000\000\
\\001\000\166\000\089\003\000\000\
\\001\000\166\000\090\003\000\000\
\\001\000\166\000\091\003\000\000\
\\001\000\166\000\092\003\000\000\
\\001\000\166\000\093\003\000\000\
\\001\000\166\000\094\003\000\000\
\\001\000\166\000\095\003\000\000\
\\001\000\166\000\096\003\000\000\
\\001\000\166\000\097\003\000\000\
\\001\000\166\000\098\003\000\000\
\\001\000\166\000\099\003\000\000\
\\001\000\166\000\100\003\000\000\
\\001\000\166\000\101\003\000\000\
\\001\000\166\000\102\003\000\000\
\\001\000\166\000\107\003\000\000\
\\001\000\166\000\108\003\000\000\
\\001\000\166\000\109\003\000\000\
\\001\000\166\000\133\003\167\000\132\003\168\000\131\003\176\000\049\004\000\000\
\\001\000\166\000\167\003\000\000\
\\001\000\166\000\191\003\000\000\
\\001\000\166\000\042\004\174\000\103\002\000\000\
\\001\000\166\000\078\004\000\000\
\\001\000\169\000\032\002\000\000\
\\001\000\174\000\075\001\000\000\
\\001\000\174\000\103\002\000\000\
\\001\000\174\000\004\004\000\000\
\\001\000\174\000\005\004\000\000\
\\001\000\174\000\006\004\000\000\
\\001\000\174\000\007\004\000\000\
\\001\000\175\000\168\001\000\000\
\\001\000\175\000\251\001\000\000\
\\001\000\175\000\254\001\000\000\
\\001\000\175\000\029\002\000\000\
\\001\000\175\000\079\002\000\000\
\\001\000\175\000\085\002\000\000\
\\001\000\175\000\072\004\000\000\
\\001\000\176\000\170\001\000\000\
\\001\000\176\000\211\002\000\000\
\\001\000\176\000\220\002\000\000\
\\001\000\176\000\044\003\000\000\
\\001\000\176\000\116\003\000\000\
\\001\000\176\000\151\003\000\000\
\\001\000\176\000\152\003\000\000\
\\001\000\176\000\166\003\000\000\
\\001\000\176\000\048\004\000\000\
\\001\000\176\000\087\004\000\000\
\\001\000\176\000\088\004\000\000\
\\001\000\176\000\089\004\000\000\
\\001\000\176\000\090\004\000\000\
\\001\000\181\000\010\001\182\000\009\001\000\000\
\\001\000\181\000\165\001\000\000\
\\104\004\000\000\
\\105\004\000\000\
\\106\004\000\000\
\\107\004\000\000\
\\108\004\000\000\
\\109\004\000\000\
\\110\004\000\000\
\\111\004\000\000\
\\111\004\044\000\121\002\000\000\
\\112\004\000\000\
\\113\004\000\000\
\\114\004\000\000\
\\115\004\000\000\
\\116\004\000\000\
\\117\004\000\000\
\\118\004\000\000\
\\119\004\000\000\
\\120\004\000\000\
\\121\004\000\000\
\\122\004\000\000\
\\123\004\000\000\
\\124\004\000\000\
\\125\004\000\000\
\\126\004\000\000\
\\127\004\000\000\
\\128\004\000\000\
\\129\004\000\000\
\\130\004\000\000\
\\131\004\000\000\
\\132\004\000\000\
\\133\004\000\000\
\\134\004\000\000\
\\135\004\000\000\
\\136\004\000\000\
\\137\004\000\000\
\\138\004\000\000\
\\139\004\000\000\
\\140\004\000\000\
\\141\004\000\000\
\\142\004\000\000\
\\143\004\000\000\
\\144\004\000\000\
\\145\004\000\000\
\\146\004\000\000\
\\147\004\000\000\
\\148\004\000\000\
\\149\004\000\000\
\\150\004\000\000\
\\151\004\000\000\
\\152\004\000\000\
\\153\004\000\000\
\\154\004\000\000\
\\155\004\000\000\
\\155\004\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\238\001\059\000\092\000\062\000\237\001\063\000\171\000\
\\064\000\170\000\066\000\236\001\067\000\051\001\070\000\050\001\
\\072\000\085\000\073\000\168\000\076\000\083\000\077\000\166\000\
\\080\000\081\000\081\000\164\000\084\000\079\000\085\000\162\000\
\\088\000\077\000\089\000\161\000\092\000\075\000\093\000\159\000\
\\096\000\073\000\097\000\157\000\104\000\156\000\107\000\069\000\
\\108\000\155\000\111\000\067\000\112\000\153\000\115\000\065\000\
\\116\000\151\000\119\000\235\001\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\179\000\046\001\000\000\
\\156\004\000\000\
\\157\004\000\000\
\\158\004\000\000\
\\159\004\000\000\
\\160\004\000\000\
\\161\004\000\000\
\\162\004\000\000\
\\163\004\000\000\
\\164\004\000\000\
\\165\004\000\000\
\\166\004\000\000\
\\167\004\000\000\
\\168\004\000\000\
\\169\004\000\000\
\\170\004\000\000\
\\171\004\000\000\
\\171\004\150\000\080\001\000\000\
\\172\004\000\000\
\\172\004\034\000\070\001\157\000\069\001\000\000\
\\172\004\157\000\072\003\000\000\
\\172\004\157\000\128\003\000\000\
\\173\004\000\000\
\\174\004\000\000\
\\174\004\150\000\061\001\000\000\
\\175\004\000\000\
\\175\004\150\000\062\001\000\000\
\\176\004\000\000\
\\176\004\136\000\059\001\000\000\
\\177\004\000\000\
\\177\004\136\000\058\001\000\000\
\\178\004\000\000\
\\178\004\150\000\032\001\000\000\
\\179\004\000\000\
\\179\004\150\000\031\001\000\000\
\\180\004\000\000\
\\180\004\048\000\030\001\000\000\
\\181\004\000\000\
\\181\004\150\000\029\001\000\000\
\\182\004\000\000\
\\183\004\000\000\
\\184\004\000\000\
\\185\004\000\000\
\\186\004\000\000\
\\187\004\000\000\
\\188\004\000\000\
\\189\004\000\000\
\\190\004\000\000\
\\191\004\000\000\
\\192\004\000\000\
\\193\004\000\000\
\\194\004\000\000\
\\195\004\000\000\
\\196\004\000\000\
\\197\004\000\000\
\\198\004\000\000\
\\199\004\000\000\
\\200\004\000\000\
\\201\004\000\000\
\\202\004\000\000\
\\203\004\000\000\
\\204\004\000\000\
\\205\004\000\000\
\\206\004\000\000\
\\207\004\000\000\
\\208\004\000\000\
\\209\004\000\000\
\\210\004\000\000\
\\211\004\000\000\
\\212\004\000\000\
\\213\004\000\000\
\\214\004\000\000\
\\215\004\000\000\
\\216\004\000\000\
\\217\004\000\000\
\\218\004\000\000\
\\219\004\000\000\
\\220\004\000\000\
\\221\004\000\000\
\\222\004\000\000\
\\222\004\049\000\002\002\000\000\
\\223\004\000\000\
\\223\004\049\000\003\002\000\000\
\\224\004\035\000\033\002\000\000\
\\225\004\000\000\
\\226\004\000\000\
\\227\004\172\000\223\002\000\000\
\\228\004\000\000\
\\229\004\000\000\
\\230\004\000\000\
\\231\004\000\000\
\\232\004\000\000\
\\233\004\000\000\
\\234\004\006\000\147\001\007\000\146\001\016\000\145\001\067\000\144\001\
\\174\000\035\002\000\000\
\\235\004\000\000\
\\236\004\035\000\033\002\172\000\219\002\000\000\
\\237\004\000\000\
\\238\004\035\000\033\002\000\000\
\\239\004\000\000\
\\240\004\035\000\033\002\172\000\117\003\000\000\
\\241\004\000\000\
\\242\004\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\243\004\000\000\
\\244\004\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\052\001\063\000\171\000\064\000\170\000\067\000\051\001\
\\070\000\050\001\072\000\085\000\073\000\168\000\076\000\083\000\
\\077\000\166\000\080\000\081\000\081\000\164\000\084\000\079\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\075\000\
\\093\000\159\000\096\000\073\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\067\000\112\000\153\000\
\\115\000\065\000\116\000\151\000\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\179\000\046\001\000\000\
\\245\004\000\000\
\\246\004\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\247\004\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\248\004\000\000\
\\249\004\000\000\
\\250\004\172\000\001\002\000\000\
\\251\004\000\000\
\\252\004\035\000\033\002\000\000\
\\253\004\166\000\246\000\177\000\244\000\178\000\243\000\000\000\
\\254\004\166\000\246\000\178\000\243\000\000\000\
\\255\004\000\000\
\\000\005\000\000\
\\001\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\002\005\000\000\
\\003\005\000\000\
\\004\005\000\000\
\\005\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\006\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\007\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\008\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\009\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\010\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\011\005\000\000\
\\012\005\000\000\
\\013\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\172\000\180\003\177\000\244\000\178\000\243\000\000\000\
\\014\005\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\032\000\104\000\
\\037\000\102\000\045\000\099\000\048\000\098\000\050\000\097\000\
\\051\000\096\000\054\000\095\000\055\000\094\000\059\000\092\000\
\\063\000\090\000\064\000\089\000\067\000\087\000\070\000\086\000\
\\072\000\169\000\073\000\084\000\076\000\167\000\077\000\082\000\
\\080\000\165\000\081\000\080\000\084\000\163\000\085\000\078\000\
\\088\000\077\000\089\000\076\000\092\000\160\000\093\000\074\000\
\\096\000\158\000\097\000\072\000\100\000\071\000\104\000\070\000\
\\107\000\069\000\108\000\068\000\111\000\154\000\112\000\066\000\
\\115\000\152\000\116\000\064\000\120\000\062\000\123\000\149\000\
\\124\000\060\000\127\000\147\000\128\000\058\000\133\000\057\000\
\\134\000\189\000\136\000\054\000\139\000\144\000\140\000\051\000\
\\142\000\050\000\143\000\049\000\144\000\048\000\145\000\047\000\
\\146\000\046\000\147\000\045\000\148\000\044\000\149\000\043\000\
\\150\000\042\000\151\000\041\000\152\000\040\000\153\000\137\000\
\\154\000\038\000\173\000\033\000\174\000\032\000\179\000\031\000\
\\180\000\030\000\183\000\029\000\000\000\
\\015\005\172\000\073\004\000\000\
\\016\005\000\000\
\\017\005\161\000\242\000\000\000\
\\018\005\000\000\
\\019\005\000\000\
\\019\005\162\000\241\000\000\000\
\\019\005\162\000\241\000\175\000\030\002\000\000\
\\020\005\003\000\129\000\004\000\128\000\005\000\127\000\008\000\125\000\
\\009\000\124\000\010\000\220\000\011\000\122\000\012\000\219\000\
\\013\000\120\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\037\000\102\000\
\\045\000\218\000\051\000\217\000\055\000\216\000\058\000\093\000\
\\059\000\092\000\062\000\091\000\063\000\215\000\064\000\214\000\
\\066\000\088\000\067\000\087\000\070\000\086\000\072\000\213\000\
\\073\000\212\000\076\000\211\000\077\000\210\000\080\000\209\000\
\\081\000\208\000\084\000\207\000\085\000\206\000\089\000\205\000\
\\092\000\204\000\093\000\203\000\096\000\202\000\097\000\201\000\
\\100\000\071\000\104\000\200\000\108\000\199\000\111\000\198\000\
\\112\000\197\000\115\000\196\000\116\000\195\000\119\000\063\000\
\\120\000\194\000\123\000\193\000\124\000\192\000\127\000\191\000\
\\128\000\190\000\133\000\145\000\134\000\189\000\137\000\053\000\
\\139\000\144\000\140\000\051\000\142\000\050\000\143\000\049\000\
\\145\000\143\000\146\000\142\000\148\000\141\000\149\000\140\000\
\\151\000\139\000\152\000\138\000\153\000\137\000\154\000\136\000\
\\156\000\037\000\158\000\035\000\173\000\033\000\174\000\032\000\
\\179\000\031\000\180\000\030\000\183\000\029\000\000\000\
\\021\005\000\000\
\\022\005\014\000\240\000\053\000\239\000\057\000\238\000\061\000\237\000\
\\071\000\236\000\075\000\235\000\079\000\234\000\083\000\233\000\
\\087\000\232\000\091\000\231\000\095\000\230\000\099\000\229\000\
\\106\000\228\000\110\000\227\000\114\000\226\000\118\000\225\000\
\\126\000\224\000\130\000\223\000\000\000\
\\022\005\014\000\240\000\053\000\239\000\057\000\238\000\061\000\237\000\
\\071\000\236\000\075\000\235\000\079\000\234\000\083\000\233\000\
\\087\000\232\000\091\000\231\000\095\000\230\000\099\000\229\000\
\\106\000\228\000\110\000\227\000\114\000\226\000\118\000\225\000\
\\126\000\224\000\130\000\223\000\171\000\222\000\000\000\
\\023\005\000\000\
\\024\005\000\000\
\\025\005\000\000\
\\026\005\000\000\
\\027\005\000\000\
\\028\005\000\000\
\\029\005\000\000\
\\030\005\000\000\
\\031\005\000\000\
\\032\005\035\000\183\000\101\000\182\000\138\000\181\000\000\000\
\\032\005\101\000\182\000\138\000\181\000\000\000\
\\033\005\000\000\
\\034\005\000\000\
\\035\005\000\000\
\\036\005\101\000\182\000\138\000\181\000\000\000\
\\037\005\000\000\
\\038\005\000\000\
\\040\005\000\000\
\\041\005\000\000\
\\042\005\000\000\
\\043\005\000\000\
\\045\005\000\000\
\\046\005\000\000\
\\047\005\135\000\253\001\162\000\131\002\000\000\
\\048\005\000\000\
\\049\005\000\000\
\\050\005\000\000\
\\051\005\000\000\
\\052\005\000\000\
\\053\005\000\000\
\\054\005\000\000\
\\055\005\000\000\
\\056\005\000\000\
\\057\005\000\000\
\\058\005\000\000\
\\059\005\000\000\
\\060\005\000\000\
\\061\005\000\000\
\\062\005\000\000\
\\063\005\000\000\
\\064\005\000\000\
\\065\005\000\000\
\\066\005\000\000\
\\067\005\000\000\
\\068\005\000\000\
\\069\005\000\000\
\\070\005\000\000\
\\071\005\000\000\
\\072\005\000\000\
\\073\005\000\000\
\\074\005\000\000\
\\075\005\000\000\
\\076\005\000\000\
\\077\005\000\000\
\\078\005\000\000\
\\079\005\000\000\
\\080\005\000\000\
\\081\005\000\000\
\\082\005\000\000\
\\083\005\000\000\
\\084\005\000\000\
\\085\005\000\000\
\\086\005\000\000\
\\087\005\000\000\
\\088\005\000\000\
\\089\005\000\000\
\\090\005\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\013\000\120\000\017\000\119\000\018\000\118\000\
\\019\000\117\000\020\000\116\000\021\000\115\000\022\000\114\000\
\\023\000\113\000\024\000\112\000\025\000\111\000\026\000\110\000\
\\027\000\109\000\028\000\108\000\030\000\106\000\031\000\105\000\
\\032\000\104\000\037\000\102\000\045\000\099\000\048\000\098\000\
\\050\000\097\000\051\000\096\000\054\000\095\000\055\000\094\000\
\\058\000\093\000\059\000\092\000\062\000\091\000\063\000\090\000\
\\064\000\089\000\066\000\088\000\067\000\087\000\070\000\086\000\
\\072\000\085\000\073\000\084\000\076\000\083\000\077\000\082\000\
\\080\000\081\000\081\000\080\000\084\000\079\000\085\000\078\000\
\\088\000\077\000\089\000\076\000\092\000\075\000\093\000\074\000\
\\096\000\073\000\097\000\072\000\100\000\071\000\104\000\070\000\
\\107\000\069\000\108\000\068\000\111\000\067\000\112\000\066\000\
\\115\000\065\000\116\000\064\000\119\000\063\000\120\000\062\000\
\\123\000\061\000\124\000\060\000\127\000\059\000\128\000\058\000\
\\133\000\057\000\134\000\056\000\135\000\055\000\136\000\054\000\
\\137\000\053\000\139\000\144\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\144\000\048\000\145\000\047\000\146\000\046\000\
\\147\000\045\000\148\000\044\000\149\000\043\000\150\000\042\000\
\\151\000\041\000\152\000\040\000\153\000\039\000\154\000\038\000\
\\156\000\037\000\158\000\035\000\159\000\022\001\173\000\033\000\
\\174\000\032\000\179\000\031\000\180\000\030\000\183\000\029\000\000\000\
\\091\005\000\000\
\\092\005\030\000\048\002\100\000\047\002\101\000\046\002\000\000\
\\093\005\000\000\
\\094\005\123\000\227\002\124\000\226\002\000\000\
\\095\005\000\000\
\\096\005\000\000\
\\097\005\000\000\
\\098\005\000\000\
\\099\005\000\000\
\\100\005\000\000\
\\101\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\102\005\000\000\
\\103\005\000\000\
\\104\005\000\000\
\\105\005\182\000\009\001\000\000\
\\106\005\000\000\
\\107\005\000\000\
\\108\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\172\000\172\001\177\000\244\000\178\000\243\000\000\000\
\\109\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\172\000\169\001\177\000\244\000\178\000\243\000\000\000\
\\110\005\000\000\
\\111\005\036\000\199\001\166\000\197\001\000\000\
\\112\005\035\000\033\002\000\000\
\\113\005\000\000\
\\114\005\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\052\001\063\000\171\000\064\000\170\000\067\000\051\001\
\\070\000\050\001\072\000\085\000\073\000\168\000\076\000\083\000\
\\077\000\166\000\080\000\081\000\081\000\164\000\084\000\079\000\
\\085\000\162\000\088\000\077\000\089\000\161\000\092\000\075\000\
\\093\000\159\000\096\000\073\000\097\000\157\000\104\000\156\000\
\\107\000\069\000\108\000\155\000\111\000\067\000\112\000\153\000\
\\115\000\065\000\116\000\151\000\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\179\000\046\001\000\000\
\\115\005\000\000\
\\116\005\014\000\240\000\053\000\239\000\057\000\238\000\061\000\237\000\
\\075\000\235\000\079\000\234\000\083\000\233\000\087\000\232\000\
\\091\000\231\000\095\000\230\000\099\000\229\000\106\000\228\000\
\\110\000\227\000\114\000\226\000\118\000\225\000\126\000\224\000\
\\130\000\223\000\000\000\
\\117\005\000\000\
\\118\005\000\000\
\\119\005\000\000\
\\120\005\000\000\
\\121\005\000\000\
\\122\005\000\000\
\\123\005\000\000\
\\124\005\000\000\
\\125\005\000\000\
\\126\005\000\000\
\\127\005\000\000\
\\128\005\000\000\
\\129\005\000\000\
\\130\005\000\000\
\\131\005\000\000\
\\132\005\000\000\
\\133\005\000\000\
\\134\005\000\000\
\\135\005\000\000\
\\136\005\000\000\
\\137\005\000\000\
\\138\005\000\000\
\\139\005\000\000\
\\140\005\036\000\199\001\166\000\197\001\000\000\
\\142\005\036\000\199\001\166\000\197\001\000\000\
\\143\005\035\000\033\002\036\000\154\003\000\000\
\\144\005\000\000\
\\145\005\036\000\199\001\166\000\197\001\000\000\
\\146\005\172\000\087\002\000\000\
\\147\005\000\000\
\\148\005\000\000\
\\149\005\036\000\199\001\166\000\197\001\172\000\080\002\000\000\
\\150\005\000\000\
\\151\005\036\000\199\001\059\000\153\003\166\000\197\001\000\000\
\\152\005\000\000\
\\153\005\033\000\194\001\000\000\
\\154\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\155\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\156\005\033\000\126\002\000\000\
\\157\005\044\000\047\003\000\000\
\\158\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\159\005\014\000\240\000\053\000\239\000\057\000\238\000\061\000\237\000\
\\075\000\235\000\079\000\234\000\083\000\233\000\087\000\232\000\
\\091\000\231\000\095\000\230\000\099\000\229\000\106\000\228\000\
\\110\000\227\000\114\000\226\000\118\000\225\000\126\000\224\000\
\\130\000\223\000\166\000\069\002\000\000\
\\159\005\166\000\069\002\000\000\
\\160\005\035\000\033\002\000\000\
\\161\005\033\000\067\002\000\000\
\\162\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\163\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\164\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\165\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\166\005\000\000\
\\167\005\000\000\
\\168\005\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\238\001\059\000\092\000\062\000\237\001\063\000\171\000\
\\064\000\170\000\066\000\236\001\067\000\051\001\070\000\050\001\
\\072\000\085\000\073\000\168\000\076\000\083\000\077\000\166\000\
\\080\000\081\000\081\000\164\000\084\000\079\000\085\000\162\000\
\\088\000\077\000\089\000\161\000\092\000\075\000\093\000\159\000\
\\096\000\073\000\097\000\157\000\104\000\156\000\107\000\069\000\
\\108\000\155\000\111\000\067\000\112\000\153\000\115\000\065\000\
\\116\000\151\000\119\000\235\001\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\179\000\046\001\000\000\
\\169\005\000\000\
\\170\005\147\000\074\001\000\000\
\\171\005\000\000\
\\172\005\033\000\112\002\000\000\
\\173\005\000\000\
\\174\005\000\000\
\\175\005\000\000\
\\176\005\033\000\009\003\000\000\
\\177\005\000\000\
\\178\005\000\000\
\\179\005\000\000\
\\180\005\033\000\158\003\000\000\
\\181\005\000\000\
\\182\005\000\000\
\\183\005\000\000\
\\184\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\185\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\186\005\004\000\128\000\005\000\127\000\008\000\057\001\009\000\124\000\
\\010\000\176\000\011\000\122\000\012\000\056\001\013\000\120\000\
\\017\000\119\000\018\000\118\000\019\000\055\001\030\000\054\001\
\\031\000\053\001\045\000\174\000\051\000\173\000\055\000\172\000\
\\058\000\238\001\059\000\092\000\062\000\237\001\063\000\171\000\
\\064\000\170\000\066\000\236\001\067\000\051\001\070\000\050\001\
\\072\000\085\000\073\000\168\000\076\000\083\000\077\000\166\000\
\\080\000\081\000\081\000\164\000\084\000\079\000\085\000\162\000\
\\088\000\077\000\089\000\161\000\092\000\075\000\093\000\159\000\
\\096\000\073\000\097\000\157\000\104\000\156\000\107\000\069\000\
\\108\000\155\000\111\000\067\000\112\000\153\000\115\000\065\000\
\\116\000\151\000\119\000\235\001\120\000\150\000\123\000\061\000\
\\124\000\148\000\127\000\059\000\128\000\146\000\133\000\145\000\
\\139\000\144\000\143\000\049\000\145\000\143\000\146\000\142\000\
\\148\000\141\000\149\000\140\000\151\000\139\000\152\000\138\000\
\\153\000\137\000\154\000\136\000\163\000\048\001\174\000\047\001\
\\179\000\046\001\000\000\
\\187\005\014\000\240\000\053\000\239\000\057\000\238\000\061\000\237\000\
\\075\000\235\000\079\000\234\000\083\000\233\000\087\000\232\000\
\\091\000\231\000\095\000\230\000\099\000\229\000\106\000\228\000\
\\110\000\227\000\114\000\226\000\118\000\225\000\126\000\224\000\
\\130\000\223\000\000\000\
\\188\005\000\000\
\\190\005\000\000\
\\191\005\000\000\
\\193\005\000\000\
\\194\005\000\000\
\\195\005\000\000\
\\196\005\000\000\
\\197\005\071\000\113\002\000\000\
\\198\005\000\000\
\\199\005\033\000\180\000\000\000\
\\200\005\035\000\033\002\000\000\
\\201\005\000\000\
\\202\005\016\000\116\001\174\000\115\001\000\000\
\\203\005\000\000\
\\204\005\172\000\212\002\000\000\
\\205\005\000\000\
\\206\005\033\000\179\000\000\000\
\\207\005\000\000\
\\208\005\000\000\
\\209\005\000\000\
\\210\005\000\000\
\\211\005\059\000\113\003\000\000\
\\212\005\000\000\
\\213\005\006\000\147\001\007\000\146\001\016\000\145\001\067\000\144\001\
\\174\000\143\001\000\000\
\\214\005\035\000\033\002\000\000\
\\215\005\033\000\009\002\000\000\
\\216\005\006\000\147\001\007\000\146\001\016\000\145\001\044\000\011\002\
\\067\000\144\001\174\000\143\001\000\000\
\\217\005\035\000\033\002\000\000\
\\218\005\000\000\
\\219\005\000\000\
\\220\005\017\000\119\000\018\000\118\000\000\000\
\\221\005\000\000\
\\222\005\017\000\119\000\018\000\118\000\000\000\
\\223\005\000\000\
\\224\005\000\000\
\\225\005\033\000\194\001\000\000\
\\226\005\036\000\199\001\166\000\197\001\000\000\
\\227\005\033\000\126\002\000\000\
\\228\005\033\000\067\002\000\000\
\\229\005\000\000\
\\230\005\000\000\
\\231\005\000\000\
\\232\005\033\000\180\000\000\000\
\\233\005\033\000\179\000\165\000\178\000\000\000\
\\234\005\033\000\180\000\000\000\
\\235\005\033\000\009\002\000\000\
\\236\005\000\000\
\\237\005\000\000\
\\238\005\000\000\
\\239\005\000\000\
\\240\005\000\000\
\\241\005\000\000\
\\242\005\000\000\
\\243\005\000\000\
\\244\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\245\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\246\005\000\000\
\\247\005\000\000\
\\248\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\249\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\250\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\251\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\252\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\253\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\254\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\255\005\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\000\006\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\001\006\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\002\006\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\003\006\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\004\006\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\005\006\172\000\086\004\000\000\
\\006\006\000\000\
\\007\006\000\000\
\\008\006\000\000\
\\009\006\000\000\
\\010\006\000\000\
\\011\006\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\032\000\104\000\
\\037\000\102\000\045\000\099\000\048\000\098\000\050\000\097\000\
\\051\000\096\000\054\000\095\000\055\000\094\000\059\000\092\000\
\\063\000\090\000\064\000\089\000\067\000\087\000\070\000\086\000\
\\072\000\169\000\073\000\084\000\076\000\167\000\077\000\082\000\
\\080\000\165\000\081\000\080\000\084\000\163\000\085\000\078\000\
\\088\000\077\000\089\000\076\000\092\000\160\000\093\000\074\000\
\\096\000\158\000\097\000\072\000\100\000\071\000\104\000\070\000\
\\107\000\069\000\108\000\068\000\111\000\154\000\112\000\066\000\
\\115\000\152\000\116\000\064\000\120\000\062\000\123\000\149\000\
\\124\000\060\000\127\000\147\000\128\000\058\000\133\000\057\000\
\\134\000\189\000\136\000\054\000\139\000\144\000\140\000\051\000\
\\142\000\050\000\143\000\049\000\144\000\048\000\145\000\047\000\
\\146\000\046\000\147\000\045\000\148\000\044\000\149\000\043\000\
\\150\000\042\000\151\000\041\000\152\000\040\000\153\000\137\000\
\\154\000\038\000\159\000\180\001\173\000\033\000\174\000\032\000\
\\179\000\031\000\180\000\030\000\183\000\029\000\000\000\
\\012\006\000\000\
\\013\006\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\032\000\104\000\
\\037\000\102\000\045\000\099\000\048\000\098\000\050\000\097\000\
\\051\000\096\000\054\000\095\000\055\000\094\000\059\000\092\000\
\\063\000\090\000\064\000\089\000\067\000\087\000\070\000\086\000\
\\072\000\169\000\073\000\084\000\076\000\167\000\077\000\082\000\
\\080\000\165\000\081\000\080\000\084\000\163\000\085\000\078\000\
\\088\000\077\000\089\000\076\000\092\000\160\000\093\000\074\000\
\\096\000\158\000\097\000\072\000\100\000\071\000\104\000\070\000\
\\107\000\069\000\108\000\068\000\111\000\154\000\112\000\066\000\
\\115\000\152\000\116\000\064\000\120\000\062\000\123\000\149\000\
\\124\000\060\000\127\000\147\000\128\000\058\000\133\000\057\000\
\\134\000\189\000\136\000\054\000\139\000\144\000\140\000\051\000\
\\142\000\050\000\143\000\049\000\144\000\048\000\145\000\047\000\
\\146\000\046\000\147\000\045\000\148\000\044\000\149\000\043\000\
\\150\000\042\000\151\000\041\000\152\000\040\000\153\000\137\000\
\\154\000\038\000\159\000\180\001\173\000\033\000\174\000\032\000\
\\179\000\031\000\180\000\030\000\183\000\029\000\000\000\
\\014\006\000\000\
\\015\006\000\000\
\\016\006\000\000\
\\017\006\004\000\128\000\008\000\177\000\010\000\176\000\012\000\175\000\
\\045\000\174\000\051\000\173\000\055\000\172\000\059\000\092\000\
\\063\000\171\000\064\000\170\000\072\000\169\000\073\000\168\000\
\\076\000\167\000\077\000\166\000\080\000\165\000\081\000\164\000\
\\084\000\163\000\085\000\162\000\088\000\077\000\089\000\161\000\
\\092\000\160\000\093\000\159\000\096\000\158\000\097\000\157\000\
\\104\000\156\000\107\000\069\000\108\000\155\000\111\000\154\000\
\\112\000\153\000\115\000\152\000\116\000\151\000\120\000\150\000\
\\123\000\149\000\124\000\148\000\127\000\147\000\128\000\146\000\
\\133\000\145\000\139\000\144\000\143\000\049\000\145\000\143\000\
\\146\000\142\000\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\000\000\
\\018\006\004\000\128\000\008\000\177\000\010\000\176\000\012\000\175\000\
\\045\000\174\000\051\000\173\000\055\000\172\000\059\000\092\000\
\\063\000\171\000\064\000\170\000\072\000\169\000\073\000\168\000\
\\076\000\167\000\077\000\166\000\080\000\165\000\081\000\164\000\
\\084\000\163\000\085\000\162\000\088\000\077\000\089\000\161\000\
\\092\000\160\000\093\000\159\000\096\000\158\000\097\000\157\000\
\\104\000\156\000\107\000\069\000\108\000\155\000\111\000\154\000\
\\112\000\153\000\115\000\152\000\116\000\151\000\120\000\150\000\
\\123\000\149\000\124\000\148\000\127\000\147\000\128\000\146\000\
\\133\000\145\000\139\000\144\000\143\000\049\000\145\000\143\000\
\\146\000\142\000\148\000\141\000\149\000\140\000\151\000\139\000\
\\152\000\138\000\153\000\137\000\154\000\136\000\000\000\
\\019\006\000\000\
\\020\006\000\000\
\\021\006\000\000\
\\022\006\000\000\
\\023\006\000\000\
\\024\006\004\000\128\000\006\000\201\002\010\000\200\002\012\000\199\002\
\\038\000\198\002\039\000\197\002\045\000\196\002\046\000\195\002\
\\048\000\194\002\051\000\193\002\055\000\192\002\059\000\191\002\
\\063\000\190\002\064\000\189\002\072\000\188\002\073\000\187\002\
\\076\000\186\002\077\000\185\002\080\000\184\002\081\000\183\002\
\\084\000\182\002\085\000\181\002\088\000\180\002\089\000\179\002\
\\092\000\178\002\093\000\177\002\096\000\176\002\097\000\175\002\
\\104\000\174\002\107\000\173\002\108\000\172\002\111\000\171\002\
\\112\000\170\002\116\000\169\002\120\000\168\002\123\000\167\002\
\\124\000\166\002\127\000\165\002\128\000\164\002\133\000\145\000\
\\139\000\163\002\143\000\049\000\144\000\162\002\145\000\143\000\
\\146\000\142\000\147\000\045\000\148\000\141\000\149\000\140\000\
\\150\000\161\002\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\155\000\160\002\157\000\159\002\000\000\
\\025\006\000\000\
\\026\006\004\000\128\000\006\000\201\002\010\000\200\002\012\000\199\002\
\\038\000\198\002\039\000\197\002\045\000\196\002\046\000\195\002\
\\048\000\194\002\051\000\193\002\055\000\192\002\059\000\191\002\
\\063\000\190\002\064\000\189\002\072\000\188\002\073\000\187\002\
\\076\000\186\002\077\000\185\002\080\000\184\002\081\000\183\002\
\\084\000\182\002\085\000\181\002\088\000\180\002\089\000\179\002\
\\092\000\178\002\093\000\177\002\096\000\176\002\097\000\175\002\
\\104\000\174\002\107\000\173\002\108\000\172\002\111\000\171\002\
\\112\000\170\002\116\000\169\002\120\000\168\002\123\000\167\002\
\\124\000\166\002\127\000\165\002\128\000\164\002\133\000\145\000\
\\139\000\163\002\143\000\049\000\144\000\162\002\145\000\143\000\
\\146\000\142\000\147\000\045\000\148\000\141\000\149\000\140\000\
\\150\000\161\002\151\000\139\000\152\000\138\000\153\000\137\000\
\\154\000\136\000\155\000\160\002\157\000\159\002\000\000\
\\027\006\000\000\
\\028\006\033\000\190\003\000\000\
\\029\006\033\000\039\004\000\000\
\\030\006\033\000\179\000\165\000\060\003\000\000\
\\031\006\033\000\180\000\000\000\
\\032\006\033\000\057\003\000\000\
\\033\006\033\000\057\003\000\000\
\\034\006\033\000\056\003\000\000\
\\035\006\033\000\056\003\000\000\
\\036\006\033\000\228\003\000\000\
\\037\006\162\000\246\002\000\000\
\\039\006\033\000\193\003\000\000\
\\040\006\033\000\190\003\000\000\
\\041\006\044\000\076\004\162\000\246\002\000\000\
\\042\006\000\000\
\\043\006\033\000\039\004\000\000\
\\044\006\000\000\
\\045\006\033\000\057\003\000\000\
\\046\006\044\000\234\003\045\000\024\002\000\000\
\\046\006\044\000\044\004\000\000\
\\047\006\035\000\033\002\000\000\
\\048\006\033\000\056\003\000\000\
\\049\006\035\000\033\002\000\000\
\\050\006\035\000\033\002\000\000\
\\051\006\035\000\033\002\000\000\
\\052\006\035\000\033\002\000\000\
\\053\006\035\000\033\002\000\000\
\\054\006\035\000\033\002\000\000\
\\055\006\035\000\033\002\000\000\
\\056\006\035\000\033\002\000\000\
\\057\006\035\000\033\002\000\000\
\\058\006\035\000\033\002\000\000\
\\059\006\035\000\033\002\000\000\
\\060\006\035\000\033\002\000\000\
\\061\006\035\000\033\002\000\000\
\\062\006\035\000\033\002\000\000\
\\063\006\035\000\033\002\000\000\
\\064\006\035\000\033\002\000\000\
\\065\006\035\000\033\002\000\000\
\\066\006\035\000\033\002\000\000\
\\067\006\035\000\033\002\000\000\
\\068\006\035\000\033\002\000\000\
\\069\006\035\000\033\002\000\000\
\\070\006\035\000\033\002\000\000\
\\071\006\035\000\033\002\000\000\
\\072\006\035\000\033\002\000\000\
\\073\006\035\000\033\002\000\000\
\\074\006\035\000\033\002\000\000\
\\075\006\035\000\033\002\000\000\
\\076\006\035\000\033\002\000\000\
\\077\006\035\000\033\002\000\000\
\\078\006\035\000\033\002\000\000\
\\079\006\035\000\033\002\000\000\
\\080\006\035\000\033\002\000\000\
\\081\006\035\000\033\002\000\000\
\\082\006\035\000\033\002\000\000\
\\083\006\033\000\228\003\000\000\
\\084\006\006\000\147\001\007\000\146\001\016\000\145\001\067\000\144\001\
\\174\000\143\001\000\000\
\\085\006\035\000\033\002\000\000\
\\086\006\033\000\193\003\000\000\
\\087\006\000\000\
\\088\006\000\000\
\\089\006\045\000\194\003\000\000\
\\090\006\000\000\
\\091\006\045\000\195\003\000\000\
\\092\006\000\000\
\\093\006\033\000\254\003\000\000\
\\094\006\000\000\
\\095\006\035\000\033\002\000\000\
\\096\006\000\000\
\\097\006\000\000\
\\098\006\033\000\254\003\000\000\
\\099\006\166\000\186\001\167\000\185\001\168\000\184\001\000\000\
\\100\006\162\000\246\002\000\000\
\\101\006\162\000\246\002\000\000\
\\102\006\162\000\246\002\000\000\
\\103\006\166\000\106\002\167\000\105\002\168\000\104\002\174\000\103\002\000\000\
\\104\006\000\000\
\\105\006\000\000\
\\106\006\000\000\
\\107\006\033\000\017\002\000\000\
\\108\006\162\000\246\002\000\000\
\\109\006\033\000\107\002\000\000\
\\110\006\162\000\246\002\000\000\
\\111\006\000\000\
\\112\006\162\000\246\002\000\000\
\\113\006\012\000\136\003\174\000\135\003\000\000\
\\114\006\000\000\
\\115\006\000\000\
\\116\006\000\000\
\\117\006\162\000\246\002\000\000\
\\118\006\162\000\246\002\000\000\
\\119\006\162\000\246\002\000\000\
\\120\006\012\000\136\003\174\000\135\003\000\000\
\\121\006\000\000\
\\122\006\012\000\136\003\174\000\135\003\000\000\
\\123\006\000\000\
\\124\006\000\000\
\\125\006\000\000\
\\126\006\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\032\000\104\000\
\\037\000\102\000\038\000\241\002\039\000\240\002\045\000\099\000\
\\048\000\098\000\050\000\097\000\051\000\096\000\054\000\095\000\
\\055\000\094\000\059\000\092\000\063\000\090\000\064\000\089\000\
\\067\000\087\000\070\000\086\000\072\000\169\000\073\000\084\000\
\\076\000\167\000\077\000\082\000\080\000\165\000\081\000\080\000\
\\084\000\163\000\085\000\078\000\088\000\077\000\089\000\076\000\
\\092\000\160\000\093\000\074\000\096\000\158\000\097\000\072\000\
\\100\000\071\000\104\000\070\000\107\000\069\000\108\000\068\000\
\\111\000\154\000\112\000\066\000\115\000\152\000\116\000\064\000\
\\120\000\062\000\123\000\149\000\124\000\060\000\127\000\147\000\
\\128\000\058\000\133\000\057\000\134\000\189\000\136\000\054\000\
\\139\000\239\002\140\000\051\000\142\000\050\000\143\000\049\000\
\\144\000\048\000\145\000\047\000\146\000\046\000\147\000\045\000\
\\148\000\044\000\149\000\043\000\150\000\042\000\151\000\041\000\
\\152\000\040\000\153\000\137\000\154\000\038\000\157\000\238\002\
\\159\000\237\002\173\000\033\000\174\000\032\000\179\000\031\000\
\\180\000\030\000\183\000\029\000\000\000\
\\126\006\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\032\000\104\000\
\\037\000\102\000\038\000\241\002\039\000\240\002\045\000\099\000\
\\048\000\098\000\050\000\097\000\051\000\096\000\054\000\095\000\
\\055\000\094\000\059\000\092\000\063\000\090\000\064\000\089\000\
\\067\000\087\000\070\000\086\000\072\000\169\000\073\000\084\000\
\\076\000\167\000\077\000\082\000\080\000\165\000\081\000\080\000\
\\084\000\163\000\085\000\078\000\088\000\077\000\089\000\076\000\
\\092\000\160\000\093\000\074\000\096\000\158\000\097\000\072\000\
\\100\000\071\000\104\000\070\000\107\000\069\000\108\000\068\000\
\\111\000\154\000\112\000\066\000\115\000\152\000\116\000\064\000\
\\120\000\062\000\123\000\149\000\124\000\060\000\127\000\147\000\
\\128\000\058\000\133\000\057\000\134\000\189\000\136\000\054\000\
\\139\000\239\002\140\000\051\000\142\000\050\000\143\000\049\000\
\\144\000\048\000\145\000\047\000\146\000\046\000\147\000\045\000\
\\148\000\044\000\149\000\043\000\150\000\042\000\151\000\041\000\
\\152\000\040\000\153\000\137\000\154\000\038\000\157\000\251\003\
\\159\000\250\003\173\000\033\000\174\000\032\000\179\000\031\000\
\\180\000\030\000\183\000\029\000\000\000\
\\127\006\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\017\000\119\000\018\000\118\000\019\000\117\000\
\\020\000\116\000\021\000\115\000\022\000\114\000\023\000\113\000\
\\024\000\112\000\025\000\111\000\026\000\110\000\027\000\109\000\
\\028\000\108\000\030\000\106\000\031\000\105\000\032\000\104\000\
\\037\000\102\000\038\000\241\002\039\000\240\002\045\000\099\000\
\\048\000\098\000\050\000\097\000\051\000\096\000\054\000\095\000\
\\055\000\094\000\059\000\092\000\063\000\090\000\064\000\089\000\
\\067\000\087\000\070\000\086\000\072\000\169\000\073\000\084\000\
\\076\000\167\000\077\000\082\000\080\000\165\000\081\000\080\000\
\\084\000\163\000\085\000\078\000\088\000\077\000\089\000\076\000\
\\092\000\160\000\093\000\074\000\096\000\158\000\097\000\072\000\
\\100\000\071\000\104\000\070\000\107\000\069\000\108\000\068\000\
\\111\000\154\000\112\000\066\000\115\000\152\000\116\000\064\000\
\\120\000\062\000\123\000\149\000\124\000\060\000\127\000\147\000\
\\128\000\058\000\133\000\057\000\134\000\189\000\136\000\054\000\
\\139\000\239\002\140\000\051\000\142\000\050\000\143\000\049\000\
\\144\000\048\000\145\000\047\000\146\000\046\000\147\000\045\000\
\\148\000\044\000\149\000\043\000\150\000\042\000\151\000\041\000\
\\152\000\040\000\153\000\137\000\154\000\038\000\157\000\238\002\
\\159\000\237\002\173\000\033\000\174\000\032\000\179\000\031\000\
\\180\000\030\000\183\000\029\000\000\000\
\\128\006\000\000\
\\129\006\033\000\182\001\000\000\
\\130\006\033\000\014\002\000\000\
\\131\006\033\000\012\002\000\000\
\\132\006\033\000\100\002\000\000\
\\133\006\000\000\
\\134\006\000\000\
\\135\006\033\000\182\001\000\000\
\\136\006\166\000\133\003\167\000\132\003\168\000\131\003\000\000\
\\137\006\000\000\
\\138\006\033\000\014\002\000\000\
\\139\006\166\000\133\003\167\000\132\003\168\000\131\003\000\000\
\\140\006\000\000\
\\141\006\033\000\012\002\000\000\
\\142\006\166\000\133\003\167\000\132\003\168\000\131\003\000\000\
\\143\006\000\000\
\\144\006\162\000\246\002\000\000\
\\145\006\000\000\
\\146\006\174\000\103\002\000\000\
\\147\006\000\000\
\\148\006\166\000\133\003\167\000\132\003\168\000\131\003\000\000\
\\149\006\000\000\
\\150\006\000\000\
\\151\006\033\000\100\002\000\000\
\\152\006\012\000\136\003\174\000\135\003\000\000\
\\153\006\000\000\
\\154\006\000\000\
\\155\006\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\013\000\120\000\017\000\119\000\018\000\118\000\
\\019\000\117\000\020\000\116\000\021\000\115\000\022\000\114\000\
\\023\000\113\000\024\000\112\000\025\000\111\000\026\000\110\000\
\\027\000\109\000\028\000\108\000\029\000\107\000\030\000\106\000\
\\031\000\105\000\032\000\104\000\034\000\103\000\037\000\102\000\
\\038\000\101\000\039\000\100\000\045\000\099\000\048\000\098\000\
\\050\000\097\000\051\000\096\000\054\000\095\000\055\000\094\000\
\\058\000\093\000\059\000\092\000\062\000\091\000\063\000\090\000\
\\064\000\089\000\066\000\088\000\067\000\087\000\070\000\086\000\
\\072\000\085\000\073\000\084\000\076\000\083\000\077\000\082\000\
\\080\000\081\000\081\000\080\000\084\000\079\000\085\000\078\000\
\\088\000\077\000\089\000\076\000\092\000\075\000\093\000\074\000\
\\096\000\073\000\097\000\072\000\100\000\071\000\104\000\070\000\
\\107\000\069\000\108\000\068\000\111\000\067\000\112\000\066\000\
\\115\000\065\000\116\000\064\000\119\000\063\000\120\000\062\000\
\\123\000\061\000\124\000\060\000\127\000\059\000\128\000\058\000\
\\133\000\057\000\134\000\056\000\135\000\055\000\136\000\054\000\
\\137\000\053\000\139\000\052\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\144\000\048\000\145\000\047\000\146\000\046\000\
\\147\000\045\000\148\000\044\000\149\000\043\000\150\000\042\000\
\\151\000\041\000\152\000\040\000\153\000\039\000\154\000\038\000\
\\156\000\037\000\157\000\036\000\158\000\035\000\159\000\034\000\
\\173\000\033\000\174\000\032\000\179\000\031\000\180\000\030\000\
\\183\000\029\000\000\000\
\\156\006\000\000\
\\157\006\033\000\182\001\000\000\
\\158\006\033\000\014\002\000\000\
\\159\006\033\000\012\002\000\000\
\\160\006\033\000\017\002\000\000\
\\161\006\000\000\
\\162\006\033\000\107\002\000\000\
\\163\006\033\000\100\002\000\000\
\\164\006\000\000\
\\165\006\000\000\
\\166\006\000\000\
\\167\006\131\000\248\000\160\000\247\000\166\000\246\000\170\000\245\000\
\\177\000\244\000\178\000\243\000\000\000\
\\168\006\003\000\129\000\004\000\128\000\005\000\127\000\006\000\126\000\
\\008\000\125\000\009\000\124\000\010\000\123\000\011\000\122\000\
\\012\000\121\000\013\000\120\000\017\000\119\000\018\000\118\000\
\\019\000\117\000\020\000\116\000\021\000\115\000\022\000\114\000\
\\023\000\113\000\024\000\112\000\025\000\111\000\026\000\110\000\
\\027\000\109\000\028\000\108\000\029\000\107\000\030\000\106\000\
\\031\000\105\000\032\000\104\000\034\000\103\000\037\000\102\000\
\\038\000\101\000\039\000\100\000\045\000\099\000\048\000\098\000\
\\050\000\097\000\051\000\096\000\054\000\095\000\055\000\094\000\
\\058\000\093\000\059\000\092\000\062\000\091\000\063\000\090\000\
\\064\000\089\000\066\000\088\000\067\000\087\000\070\000\086\000\
\\072\000\085\000\073\000\084\000\076\000\083\000\077\000\082\000\
\\080\000\081\000\081\000\080\000\084\000\079\000\085\000\078\000\
\\088\000\077\000\089\000\076\000\092\000\075\000\093\000\074\000\
\\096\000\073\000\097\000\072\000\100\000\071\000\104\000\070\000\
\\107\000\069\000\108\000\068\000\111\000\067\000\112\000\066\000\
\\115\000\065\000\116\000\064\000\119\000\063\000\120\000\062\000\
\\123\000\061\000\124\000\060\000\127\000\059\000\128\000\058\000\
\\133\000\057\000\134\000\056\000\135\000\055\000\136\000\054\000\
\\137\000\053\000\139\000\052\000\140\000\051\000\142\000\050\000\
\\143\000\049\000\144\000\048\000\145\000\047\000\146\000\046\000\
\\147\000\045\000\148\000\044\000\149\000\043\000\150\000\042\000\
\\151\000\041\000\152\000\040\000\153\000\039\000\154\000\038\000\
\\156\000\037\000\157\000\036\000\158\000\035\000\159\000\034\000\
\\173\000\033\000\174\000\032\000\179\000\031\000\180\000\030\000\
\\183\000\029\000\000\000\
\\169\006\000\000\
\\170\006\000\000\
\";
    action_row_numbers =
"\052\000\120\003\039\000\114\003\
\\078\000\182\002\181\002\024\002\
\\248\001\240\001\227\001\230\001\
\\225\001\222\001\200\001\117\003\
\\004\002\003\002\002\002\005\002\
\\004\000\104\001\152\000\003\000\
\\101\001\061\000\246\001\023\002\
\\035\001\055\000\057\000\053\000\
\\105\003\121\000\088\000\122\000\
\\128\001\126\001\124\001\122\001\
\\064\000\120\001\118\001\090\000\
\\114\001\116\001\071\000\112\001\
\\060\000\120\000\109\001\061\000\
\\121\002\009\001\068\000\107\001\
\\018\000\034\000\017\000\033\000\
\\016\000\060\000\015\000\032\000\
\\014\000\031\000\013\000\156\001\
\\024\000\084\000\012\000\030\000\
\\011\000\029\000\010\000\153\001\
\\009\000\028\000\008\000\027\000\
\\007\000\026\000\006\000\025\000\
\\056\000\054\000\060\000\020\000\
\\019\000\060\000\161\001\060\000\
\\023\000\088\000\022\000\088\000\
\\107\000\021\000\088\000\088\000\
\\060\000\091\000\092\000\009\002\
\\008\002\116\003\035\002\034\002\
\\033\002\032\002\031\002\030\002\
\\029\002\028\002\007\002\006\002\
\\042\001\041\001\084\001\037\000\
\\040\001\005\000\037\001\043\001\
\\151\002\039\001\105\001\247\001\
\\118\003\186\002\102\001\098\001\
\\103\001\222\002\127\001\125\001\
\\123\001\121\001\119\001\117\001\
\\113\001\115\001\108\001\106\001\
\\142\001\160\001\141\001\159\001\
\\140\001\139\001\158\001\138\001\
\\157\001\137\001\148\001\136\001\
\\155\001\135\001\154\001\134\001\
\\133\001\152\001\132\001\151\001\
\\131\001\150\001\130\001\149\001\
\\144\001\143\001\146\001\147\001\
\\145\001\223\002\129\001\097\001\
\\093\000\092\000\093\000\084\000\
\\084\000\068\000\241\001\229\001\
\\228\001\046\001\044\001\068\000\
\\060\001\096\001\059\001\095\001\
\\058\001\057\001\094\001\056\001\
\\093\001\055\001\066\001\054\001\
\\092\001\053\001\091\001\052\001\
\\051\001\088\001\050\001\087\001\
\\049\001\086\001\048\001\085\001\
\\062\001\061\001\065\001\064\001\
\\063\001\036\000\047\001\231\001\
\\058\000\080\001\079\001\078\001\
\\077\001\076\001\083\001\075\001\
\\074\001\073\001\071\001\070\001\
\\069\001\068\001\058\000\072\001\
\\081\001\082\001\067\001\053\000\
\\059\000\058\000\058\000\060\000\
\\096\000\195\000\068\000\058\000\
\\058\000\058\000\058\000\058\000\
\\058\000\058\000\058\000\058\000\
\\058\000\058\000\058\000\058\000\
\\058\000\245\001\036\001\089\000\
\\054\002\015\001\060\002\022\002\
\\022\001\199\000\014\002\051\002\
\\040\000\040\002\182\000\052\002\
\\216\002\106\003\214\000\242\001\
\\107\003\048\003\243\001\079\000\
\\058\000\080\000\173\002\064\002\
\\174\002\065\002\069\002\067\002\
\\132\000\079\002\078\002\077\002\
\\080\002\100\001\073\002\071\002\
\\065\000\067\000\084\002\068\000\
\\066\000\074\000\089\001\083\002\
\\082\002\081\002\072\002\099\001\
\\121\002\121\002\151\002\171\002\
\\169\002\185\002\168\002\162\001\
\\163\001\053\000\011\002\088\000\
\\097\000\123\000\069\000\178\002\
\\122\002\041\000\133\000\193\001\
\\208\001\140\000\096\000\197\000\
\\010\002\169\001\171\001\016\001\
\\204\000\017\001\198\000\019\002\
\\183\000\184\000\199\001\197\001\
\\002\000\013\002\001\000\194\000\
\\178\000\179\000\196\002\195\002\
\\184\002\165\002\109\003\048\003\
\\108\003\048\003\068\000\110\003\
\\154\000\125\000\151\002\058\000\
\\155\000\119\000\152\002\119\003\
\\224\002\225\002\183\002\151\002\
\\155\002\148\002\250\001\249\001\
\\175\002\135\000\206\001\018\001\
\\226\001\200\000\141\000\224\001\
\\008\001\203\001\202\001\207\001\
\\201\001\188\001\183\001\168\001\
\\164\001\096\000\076\000\179\001\
\\038\001\165\001\124\000\204\001\
\\142\000\193\002\208\002\198\002\
\\200\002\207\002\197\002\201\002\
\\209\002\199\002\202\002\203\002\
\\204\002\206\002\205\002\055\002\
\\056\002\001\002\021\002\058\000\
\\017\002\015\002\058\000\041\002\
\\036\002\217\002\215\000\042\000\
\\220\002\127\000\216\002\105\003\
\\088\000\156\000\098\000\098\000\
\\098\000\177\002\110\002\081\000\
\\110\002\215\001\222\000\223\000\
\\064\000\066\002\068\002\096\000\
\\058\000\068\000\019\001\099\002\
\\087\002\136\000\074\002\134\000\
\\020\001\085\002\185\000\096\002\
\\086\000\176\000\138\000\089\002\
\\097\002\179\002\069\000\180\002\
\\096\000\157\000\172\002\170\002\
\\139\000\113\003\052\003\112\003\
\\010\001\244\001\043\000\117\002\
\\109\002\123\002\146\002\137\002\
\\147\002\069\000\069\000\069\000\
\\090\001\201\000\044\000\045\001\
\\058\000\045\000\058\000\058\000\
\\194\001\025\002\176\002\086\000\
\\232\001\018\002\254\001\068\000\
\\020\002\016\002\012\002\085\000\
\\058\000\058\000\237\001\234\001\
\\235\001\236\001\233\001\107\000\
\\166\002\108\000\088\000\159\000\
\\088\000\160\000\175\000\099\000\
\\229\002\098\000\093\000\216\002\
\\161\000\194\002\094\000\095\000\
\\023\001\153\002\162\000\239\001\
\\238\001\209\001\059\000\096\000\
\\182\001\096\000\130\000\024\001\
\\083\000\186\000\176\001\224\000\
\\177\001\196\000\045\002\043\002\
\\050\002\049\002\048\002\205\001\
\\057\002\061\002\058\002\059\002\
\\042\002\216\002\218\002\216\000\
\\143\000\085\003\075\003\072\000\
\\050\003\180\000\045\003\049\003\
\\051\003\079\000\163\000\096\000\
\\110\002\110\002\164\000\096\000\
\\096\000\103\002\063\002\105\002\
\\062\002\088\002\068\000\070\002\
\\068\000\068\000\058\000\086\002\
\\090\002\075\000\094\002\068\000\
\\096\000\068\000\127\002\063\000\
\\094\000\109\000\027\002\037\002\
\\060\000\053\000\088\000\048\003\
\\165\000\229\002\100\000\101\000\
\\102\000\097\000\166\000\069\000\
\\167\000\139\002\205\000\068\000\
\\138\002\116\000\115\000\117\000\
\\118\000\058\000\058\000\058\000\
\\211\001\025\001\046\000\191\001\
\\096\000\107\002\251\001\254\001\
\\254\001\059\000\221\000\198\001\
\\170\001\172\001\196\001\195\001\
\\164\002\167\002\166\001\167\001\
\\091\003\075\003\072\000\088\003\
\\075\003\072\000\026\002\056\003\
\\153\000\240\002\237\002\047\000\
\\187\000\230\002\235\002\088\000\
\\225\000\226\002\062\000\082\000\
\\103\000\110\001\226\000\227\000\
\\228\000\229\000\230\000\231\000\
\\232\000\233\000\234\000\235\000\
\\236\000\237\000\238\000\239\000\
\\240\000\241\000\242\000\243\000\
\\244\000\245\000\246\000\247\000\
\\248\000\249\000\250\000\251\000\
\\252\000\253\000\254\000\255\000\
\\110\000\104\000\000\001\228\002\
\\227\002\001\001\002\001\151\002\
\\057\003\126\000\144\000\109\000\
\\157\002\160\002\156\002\149\002\
\\162\002\150\002\119\000\096\000\
\\223\001\187\001\026\001\131\000\
\\178\001\096\000\186\001\174\001\
\\180\001\077\000\096\000\216\001\
\\046\002\047\002\044\002\145\000\
\\219\002\216\002\115\003\188\000\
\\074\003\048\000\083\003\075\003\
\\088\000\111\001\088\000\088\000\
\\086\003\062\003\075\003\181\000\
\\062\000\229\002\112\002\058\000\
\\111\002\168\000\169\000\058\000\
\\128\000\129\000\100\002\027\001\
\\028\001\101\002\104\002\098\002\
\\091\002\093\002\092\002\206\000\
\\131\002\159\002\158\002\053\000\
\\203\000\101\003\170\000\073\000\
\\029\001\095\003\004\001\054\003\
\\053\003\055\003\058\003\098\000\
\\049\000\109\002\146\000\058\000\
\\058\000\207\000\208\000\121\002\
\\137\000\140\002\143\002\141\002\
\\114\000\142\002\113\000\210\001\
\\050\000\218\001\058\000\192\001\
\\106\002\058\000\255\001\000\002\
\\253\001\059\000\189\000\092\003\
\\190\000\089\003\082\000\104\000\
\\231\002\111\003\093\000\233\002\
\\005\001\096\000\036\003\037\003\
\\243\002\171\000\172\000\239\002\
\\242\002\038\000\088\000\096\000\
\\096\000\096\000\096\000\096\000\
\\096\000\096\000\096\000\096\000\
\\096\000\096\000\096\000\096\000\
\\096\000\096\000\096\000\096\000\
\\096\000\096\000\096\000\096\000\
\\096\000\096\000\096\000\096\000\
\\096\000\096\000\096\000\096\000\
\\096\000\241\002\033\003\238\002\
\\151\002\096\000\096\000\096\000\
\\250\002\216\002\191\002\109\000\
\\163\002\154\002\181\001\096\000\
\\185\001\184\001\175\001\173\001\
\\053\002\147\000\087\003\077\003\
\\217\000\079\003\088\000\081\003\
\\080\003\098\000\098\000\098\000\
\\064\003\076\003\070\003\218\000\
\\075\003\047\003\151\002\173\000\
\\191\000\113\002\058\000\058\000\
\\114\002\011\001\012\001\013\001\
\\014\001\075\002\076\002\068\000\
\\068\000\209\000\210\000\121\002\
\\211\000\139\000\038\002\075\003\
\\072\000\100\003\102\003\075\003\
\\096\003\105\000\059\003\119\002\
\\177\000\118\002\136\002\135\002\
\\121\002\121\002\124\002\144\002\
\\068\000\219\001\088\000\212\001\
\\108\002\252\001\093\003\090\003\
\\253\002\249\002\232\002\236\002\
\\088\000\098\000\254\002\062\000\
\\094\000\071\000\234\002\006\001\
\\014\003\031\003\013\003\030\003\
\\012\003\011\003\010\003\029\003\
\\009\003\028\003\017\003\008\003\
\\027\003\007\003\026\003\006\003\
\\025\003\005\003\024\003\003\003\
\\023\003\002\003\022\003\001\003\
\\021\003\019\003\018\003\004\003\
\\015\003\016\003\110\000\034\003\
\\251\002\020\003\000\003\255\002\
\\095\000\148\000\161\002\190\001\
\\189\001\221\002\078\003\075\003\
\\082\003\067\003\066\003\068\003\
\\030\001\003\001\111\000\112\000\
\\075\003\087\000\072\000\192\000\
\\062\000\174\000\071\000\046\003\
\\115\002\116\002\070\000\070\000\
\\070\000\070\000\102\002\095\002\
\\121\002\121\002\128\002\212\000\
\\213\000\121\002\039\002\193\000\
\\098\003\103\003\219\000\097\003\
\\094\003\035\000\120\002\125\002\
\\126\002\021\001\220\001\051\000\
\\217\001\158\000\244\002\245\002\
\\035\003\039\003\038\003\041\003\
\\040\003\088\000\007\001\248\002\
\\106\000\032\003\096\000\252\002\
\\192\002\149\000\071\003\069\003\
\\220\000\150\000\063\003\042\003\
\\096\000\043\003\210\002\031\001\
\\213\002\212\002\215\002\214\002\
\\032\001\033\001\034\001\129\002\
\\130\002\121\002\121\002\132\002\
\\099\003\073\000\145\002\219\001\
\\058\000\058\000\071\000\247\002\
\\098\000\060\003\084\003\073\003\
\\072\003\076\003\065\003\044\003\
\\070\000\188\002\187\002\190\002\
\\189\002\133\002\134\002\151\000\
\\221\001\213\001\202\000\246\002\
\\061\003\211\002\104\003\058\000\
\\214\001\000\000";
   goto_table =
"\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\015\000\
\\038\000\014\000\039\000\013\000\046\000\012\000\047\000\011\000\
\\048\000\010\000\049\000\009\000\050\000\008\000\059\000\007\000\
\\085\000\006\000\089\000\005\000\094\000\004\000\095\000\003\000\
\\125\000\101\004\126\000\002\000\128\000\001\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\002\000\133\000\006\000\024\000\007\000\132\000\008\000\131\000\
\\009\000\021\000\010\000\130\000\101\000\129\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\046\000\184\000\047\000\183\000\048\000\010\000\049\000\182\000\
\\050\000\008\000\059\000\007\000\000\000\
\\005\000\219\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\007\000\186\000\010\000\185\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\049\000\005\001\
\\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\060\000\006\001\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\010\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\057\000\009\001\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\013\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\058\000\012\001\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\019\001\
\\038\000\014\000\039\000\013\000\043\000\018\001\044\000\017\001\
\\045\000\016\001\046\000\012\000\047\000\011\000\048\000\010\000\
\\049\000\009\000\050\000\008\000\059\000\007\000\085\000\006\000\
\\089\000\005\000\094\000\004\000\095\000\015\001\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\015\000\
\\038\000\014\000\039\000\013\000\046\000\012\000\047\000\011\000\
\\048\000\010\000\049\000\009\000\050\000\008\000\059\000\007\000\
\\085\000\006\000\089\000\005\000\094\000\004\000\095\000\003\000\
\\126\000\002\000\127\000\022\001\128\000\021\001\000\000\
\\000\000\
\\007\000\025\001\129\000\024\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\036\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\071\000\032\001\081\000\031\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\064\001\015\000\063\001\017\000\062\001\093\000\061\001\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\047\000\065\001\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\007\000\186\000\010\000\185\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\049\000\069\001\
\\050\000\008\000\059\000\007\000\000\000\
\\077\000\071\001\078\000\070\001\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\030\000\077\001\031\000\076\001\032\000\075\001\
\\061\000\074\001\063\000\035\001\064\000\034\001\065\000\033\001\
\\081\000\031\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\047\000\079\001\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\081\001\021\000\080\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\010\001\038\000\086\001\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\051\000\085\001\052\000\084\001\057\000\083\001\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\092\001\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\021\000\091\001\
\\033\000\090\001\034\000\089\001\037\000\019\001\038\000\014\000\
\\039\000\013\000\043\000\088\001\044\000\017\001\045\000\016\001\
\\046\000\012\000\047\000\011\000\048\000\010\000\049\000\009\000\
\\050\000\008\000\059\000\007\000\085\000\006\000\089\000\005\000\
\\094\000\004\000\095\000\015\001\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\047\000\095\001\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\047\000\096\001\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\047\000\097\001\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\007\000\098\001\000\000\
\\000\000\
\\007\000\099\001\000\000\
\\092\000\100\001\000\000\
\\000\000\
\\007\000\103\001\131\000\102\001\000\000\
\\007\000\105\001\130\000\104\001\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\047\000\106\001\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\117\000\107\001\000\000\
\\089\000\109\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\086\000\112\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\015\000\
\\038\000\014\000\039\000\013\000\046\000\012\000\047\000\011\000\
\\048\000\010\000\049\000\009\000\050\000\008\000\059\000\007\000\
\\085\000\006\000\089\000\005\000\094\000\004\000\095\000\003\000\
\\126\000\002\000\128\000\115\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\002\000\133\000\006\000\024\000\007\000\132\000\008\000\131\000\
\\009\000\021\000\010\000\130\000\101\000\116\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\002\000\133\000\006\000\024\000\007\000\132\000\008\000\131\000\
\\009\000\021\000\010\000\130\000\101\000\117\001\000\000\
\\000\000\
\\000\000\
\\085\000\118\001\000\000\
\\089\000\120\001\000\000\
\\085\000\121\001\000\000\
\\007\000\081\001\021\000\122\001\000\000\
\\007\000\081\001\021\000\123\001\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\124\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\081\000\031\001\000\000\
\\000\000\
\\005\000\219\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\030\000\077\001\032\000\075\001\061\000\125\001\
\\063\000\035\001\064\000\034\001\065\000\033\001\081\000\031\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\126\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\129\001\038\000\014\000\039\000\013\000\046\000\128\001\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\058\000\127\001\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\019\001\
\\038\000\014\000\039\000\013\000\044\000\130\001\045\000\016\001\
\\046\000\012\000\047\000\011\000\048\000\010\000\049\000\009\000\
\\050\000\008\000\059\000\007\000\085\000\006\000\089\000\005\000\
\\094\000\004\000\095\000\015\001\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\039\000\132\001\046\000\131\001\047\000\183\000\048\000\010\000\
\\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\133\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\134\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\047\000\135\001\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\136\001\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\030\000\148\001\031\000\147\001\032\000\075\001\
\\061\000\074\001\063\000\035\001\064\000\034\001\065\000\033\001\
\\081\000\031\001\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\149\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\150\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\151\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\152\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\153\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\154\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\155\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\156\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\157\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\158\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\159\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\160\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\161\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\162\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\050\000\164\001\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\176\001\096\000\175\001\099\000\174\001\100\000\173\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\115\000\181\001\000\000\
\\000\000\
\\006\000\024\000\007\000\132\000\008\000\186\001\009\000\021\000\
\\010\000\130\000\074\000\185\001\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\189\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\006\000\024\000\007\000\132\000\008\000\190\001\009\000\021\000\
\\010\000\130\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\063\000\035\001\064\000\034\001\065\000\033\001\
\\081\000\193\001\000\000\
\\000\000\
\\005\000\194\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\199\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\069\000\198\001\081\000\031\001\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\201\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\081\000\031\001\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\203\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\081\000\031\001\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\199\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\069\000\204\001\081\000\031\001\000\000\
\\007\000\210\001\014\000\140\001\018\000\139\001\021\000\209\001\
\\022\000\138\001\025\000\137\001\027\000\208\001\066\000\207\001\
\\067\000\206\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\078\000\214\001\079\000\213\001\000\000\
\\078\000\216\001\080\000\215\001\000\000\
\\086\000\217\001\000\000\
\\012\000\218\001\000\000\
\\012\000\219\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\019\001\
\\038\000\014\000\039\000\013\000\043\000\220\001\044\000\017\001\
\\045\000\016\001\046\000\012\000\047\000\011\000\048\000\010\000\
\\049\000\009\000\050\000\008\000\059\000\007\000\085\000\006\000\
\\089\000\005\000\094\000\004\000\095\000\015\001\000\000\
\\000\000\
\\007\000\222\001\134\000\221\001\000\000\
\\118\000\223\001\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\075\000\229\001\082\000\228\001\083\000\227\001\
\\084\000\226\001\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\239\001\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\035\000\238\001\037\000\237\001\038\000\014\000\039\000\013\000\
\\046\000\012\000\047\000\011\000\048\000\010\000\049\000\182\000\
\\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\030\000\244\001\032\000\075\001\061\000\125\001\
\\063\000\035\001\064\000\034\001\065\000\033\001\081\000\031\001\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\247\001\072\000\246\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\053\000\250\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\008\002\000\000\
\\000\000\
\\115\000\011\002\000\000\
\\000\000\
\\115\000\013\002\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\030\000\014\002\032\000\075\001\061\000\125\001\
\\063\000\035\001\064\000\034\001\065\000\033\001\081\000\031\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\086\000\020\002\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\021\002\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\088\000\024\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\086\000\026\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\032\002\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\026\000\035\002\027\000\034\002\000\000\
\\007\000\081\001\014\000\140\001\018\000\139\001\021\000\039\002\
\\022\000\138\001\023\000\038\002\024\000\037\002\025\000\137\001\
\\027\000\036\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\040\000\043\002\041\000\042\002\042\000\041\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\060\000\048\002\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\010\001\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\057\000\049\002\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\051\002\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\058\000\050\002\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\019\001\
\\038\000\014\000\039\000\013\000\044\000\052\002\045\000\016\001\
\\046\000\012\000\047\000\011\000\048\000\010\000\049\000\009\000\
\\050\000\008\000\059\000\007\000\085\000\006\000\089\000\005\000\
\\094\000\004\000\095\000\015\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\176\001\096\000\175\001\099\000\055\002\100\000\173\001\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\015\000\
\\038\000\014\000\039\000\013\000\046\000\012\000\047\000\011\000\
\\048\000\010\000\049\000\009\000\050\000\008\000\059\000\007\000\
\\085\000\006\000\089\000\005\000\094\000\004\000\095\000\003\000\
\\126\000\002\000\127\000\056\002\128\000\021\001\000\000\
\\007\000\025\001\129\000\057\002\000\000\
\\000\000\
\\114\000\060\002\000\000\
\\114\000\063\002\000\000\
\\114\000\064\002\000\000\
\\000\000\
\\073\000\066\002\000\000\
\\006\000\024\000\007\000\132\000\008\000\068\002\009\000\021\000\
\\010\000\130\000\000\000\
\\073\000\070\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\036\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\071\000\073\002\081\000\031\001\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\074\002\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\075\002\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\076\002\063\000\035\001\064\000\034\001\
\\065\000\033\001\081\000\031\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\086\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\075\000\090\002\082\000\228\001\083\000\227\001\
\\084\000\226\001\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\091\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\056\000\094\002\000\000\
\\000\000\
\\116\000\100\002\133\000\099\002\000\000\
\\000\000\
\\133\000\106\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\005\000\109\002\073\000\108\002\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\082\000\112\002\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\082\000\113\002\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\082\000\114\002\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\082\000\115\002\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\082\000\116\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\120\002\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\122\002\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\123\002\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\125\002\000\000\
\\000\000\
\\000\000\
\\053\000\128\002\054\000\127\002\055\000\126\002\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\063\000\130\002\064\000\034\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\132\002\021\000\091\001\033\000\090\001\034\000\131\002\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\134\002\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\135\002\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\092\000\136\002\000\000\
\\000\000\
\\013\000\138\002\019\000\137\002\000\000\
\\007\000\103\001\131\000\140\002\000\000\
\\000\000\
\\007\000\105\001\130\000\143\002\000\000\
\\000\000\
\\000\000\
\\117\000\147\002\000\000\
\\007\000\156\002\011\000\155\002\089\000\154\002\102\000\153\002\
\\103\000\152\002\104\000\151\002\107\000\150\002\108\000\149\002\000\000\
\\114\000\200\002\000\000\
\\085\000\201\002\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\176\001\096\000\175\001\099\000\202\002\100\000\173\001\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\204\002\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\207\002\090\000\206\002\091\000\205\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\039\000\212\002\046\000\131\001\047\000\183\000\048\000\010\000\
\\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\213\002\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\215\002\028\000\214\002\000\000\
\\000\000\
\\000\000\
\\007\000\081\001\021\000\219\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\040\000\043\002\041\000\042\002\042\000\226\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\176\001\096\000\175\001\099\000\227\002\100\000\173\001\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\176\001\096\000\175\001\100\000\228\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\231\002\000\000\
\\007\000\064\001\015\000\063\001\017\000\241\002\120\000\240\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\006\000\024\000\007\000\132\000\008\000\186\001\009\000\021\000\
\\010\000\130\000\074\000\246\002\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\248\002\000\000\
\\073\000\249\002\000\000\
\\073\000\250\002\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\252\002\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\253\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\199\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\069\000\254\002\081\000\031\001\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\199\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\069\000\255\002\081\000\031\001\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\001\003\063\000\035\001\064\000\034\001\
\\065\000\033\001\070\000\000\003\081\000\031\001\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\002\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\007\000\210\001\014\000\140\001\018\000\139\001\021\000\209\001\
\\022\000\138\001\025\000\137\001\027\000\208\001\066\000\207\001\
\\067\000\003\003\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\004\003\063\000\035\001\064\000\034\001\
\\065\000\033\001\081\000\031\001\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\005\003\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\006\003\063\000\035\001\064\000\034\001\
\\065\000\033\001\081\000\031\001\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\075\000\008\003\082\000\228\001\083\000\227\001\
\\084\000\226\001\000\000\
\\014\000\140\001\018\000\139\001\022\000\009\003\000\000\
\\090\000\010\003\091\000\205\002\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\047\000\011\003\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\019\001\
\\038\000\014\000\039\000\013\000\043\000\012\003\044\000\017\001\
\\045\000\016\001\046\000\012\000\047\000\011\000\048\000\010\000\
\\049\000\009\000\050\000\008\000\059\000\007\000\085\000\006\000\
\\089\000\005\000\094\000\004\000\095\000\015\001\000\000\
\\007\000\222\001\134\000\013\003\000\000\
\\115\000\014\003\000\000\
\\000\000\
\\007\000\018\003\011\000\155\002\089\000\154\002\102\000\153\002\
\\103\000\017\003\104\000\151\002\107\000\150\002\108\000\149\002\
\\132\000\016\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\118\000\022\003\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\076\000\026\003\082\000\025\003\084\000\024\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\032\003\063\000\035\001\064\000\034\001\
\\065\000\033\001\081\000\031\001\000\000\
\\005\000\109\002\000\000\
\\005\000\109\002\000\000\
\\005\000\109\002\000\000\
\\005\000\109\002\000\000\
\\005\000\109\002\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\039\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\040\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\041\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\247\001\072\000\044\003\000\000\
\\000\000\
\\000\000\
\\053\000\128\002\054\000\127\002\055\000\046\003\000\000\
\\053\000\128\002\054\000\127\002\055\000\047\003\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\038\000\048\003\039\000\013\000\046\000\131\001\047\000\183\000\
\\048\000\010\000\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\050\003\000\000\
\\007\000\064\001\015\000\063\001\017\000\241\002\120\000\051\003\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\052\003\000\000\
\\007\000\064\001\015\000\063\001\017\000\241\002\120\000\053\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\060\003\105\000\059\003\000\000\
\\000\000\
\\000\000\
\\007\000\064\001\014\000\140\001\015\000\063\001\017\000\066\003\
\\018\000\065\003\110\000\064\003\111\000\063\003\112\000\062\003\000\000\
\\007\000\156\002\108\000\067\003\000\000\
\\114\000\068\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\109\000\101\003\000\000\
\\107\000\103\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\086\000\108\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\090\000\206\002\091\000\205\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\112\003\000\000\
\\000\000\
\\088\000\113\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\207\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\026\000\117\003\027\000\116\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\081\001\014\000\140\001\018\000\139\001\021\000\039\002\
\\022\000\138\001\023\000\038\002\024\000\118\003\025\000\137\001\
\\027\000\036\002\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\119\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\176\001\096\000\175\001\099\000\121\003\100\000\173\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\124\003\000\000\
\\007\000\025\001\129\000\125\003\000\000\
\\000\000\
\\007\000\103\001\131\000\127\003\000\000\
\\007\000\105\001\130\000\128\003\000\000\
\\000\000\
\\121\000\132\003\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\135\003\000\000\
\\000\000\
\\007\000\064\001\014\000\140\001\015\000\063\001\017\000\139\003\
\\018\000\138\003\113\000\137\003\000\000\
\\007\000\156\002\011\000\155\002\089\000\154\002\102\000\153\002\
\\103\000\140\003\104\000\151\002\107\000\150\002\108\000\149\002\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\141\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\144\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\006\000\024\000\007\000\023\000\
\\008\000\022\000\009\000\021\000\010\000\020\000\012\000\019\000\
\\013\000\018\000\015\000\017\000\016\000\016\000\037\000\019\001\
\\038\000\014\000\039\000\013\000\043\000\157\003\044\000\017\001\
\\045\000\016\001\046\000\012\000\047\000\011\000\048\000\010\000\
\\049\000\009\000\050\000\008\000\059\000\007\000\085\000\006\000\
\\089\000\005\000\094\000\004\000\095\000\015\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\064\001\015\000\063\001\017\000\162\003\135\000\161\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\114\000\166\003\000\000\
\\000\000\
\\005\000\109\002\073\000\168\003\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\170\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\171\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\077\000\174\003\078\000\070\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\179\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\180\003\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\038\000\181\003\039\000\013\000\046\000\131\001\047\000\183\000\
\\048\000\010\000\049\000\182\000\050\000\008\000\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\156\002\108\000\184\003\000\000\
\\107\000\185\003\000\000\
\\007\000\156\002\011\000\155\002\089\000\154\002\102\000\186\003\
\\104\000\151\002\107\000\150\002\108\000\149\002\000\000\
\\000\000\
\\085\000\187\003\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\190\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\195\003\106\000\194\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\196\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\197\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\198\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\199\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\200\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\201\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\202\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\203\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\204\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\205\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\206\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\207\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\208\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\209\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\210\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\211\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\212\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\213\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\214\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\215\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\216\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\217\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\218\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\219\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\220\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\221\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\222\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\223\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\224\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\225\003\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\227\003\000\000\
\\000\000\
\\086\000\228\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\229\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\230\003\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\231\003\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\176\001\096\000\175\001\099\000\233\003\100\000\173\001\000\000\
\\000\000\
\\090\000\234\003\091\000\205\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\236\003\028\000\235\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\238\003\000\000\
\\000\000\
\\000\000\
\\007\000\222\001\134\000\240\003\000\000\
\\000\000\
\\000\000\
\\114\000\241\003\000\000\
\\114\000\242\003\000\000\
\\114\000\243\003\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\247\003\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\246\003\016\000\016\000\017\000\241\002\049\000\177\001\
\\050\000\008\000\059\000\007\000\085\000\006\000\089\000\005\000\
\\094\000\004\000\095\000\234\002\120\000\245\003\122\000\233\002\
\\123\000\232\002\124\000\244\003\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\251\003\000\000\
\\000\000\
\\086\000\253\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\000\004\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\001\004\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\001\003\063\000\035\001\064\000\034\001\
\\065\000\033\001\070\000\006\004\081\000\031\001\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\007\004\063\000\035\001\064\000\034\001\
\\065\000\033\001\081\000\031\001\000\000\
\\000\000\
\\000\000\
\\077\000\010\004\078\000\070\001\000\000\
\\000\000\
\\056\000\014\004\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\015\004\000\000\
\\007\000\064\001\015\000\063\001\017\000\241\002\120\000\016\004\000\000\
\\000\000\
\\121\000\017\004\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\018\004\000\000\
\\133\000\019\004\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\190\003\114\000\020\004\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\010\000\232\001\012\000\040\001\013\000\039\001\
\\015\000\038\001\016\000\037\001\062\000\231\001\063\000\230\001\
\\064\000\034\001\076\000\022\004\082\000\025\003\084\000\024\003\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\078\000\214\001\079\000\023\004\000\000\
\\078\000\216\001\080\000\024\004\000\000\
\\000\000\
\\000\000\
\\001\000\043\001\004\000\042\001\006\000\041\001\007\000\132\000\
\\009\000\021\000\012\000\040\001\013\000\039\001\015\000\038\001\
\\016\000\037\001\061\000\199\001\063\000\035\001\064\000\034\001\
\\065\000\033\001\069\000\025\004\081\000\031\001\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\036\000\027\004\049\000\177\001\
\\050\000\008\000\059\000\007\000\085\000\006\000\089\000\005\000\
\\094\000\004\000\095\000\026\004\000\000\
\\007\000\029\004\035\000\028\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\060\003\105\000\030\004\000\000\
\\114\000\031\004\000\000\
\\000\000\
\\007\000\064\001\014\000\140\001\015\000\063\001\017\000\066\003\
\\018\000\065\003\110\000\032\004\111\000\063\003\112\000\062\003\000\000\
\\014\000\140\001\018\000\034\004\112\000\033\004\000\000\
\\007\000\064\001\015\000\063\001\017\000\036\004\111\000\035\004\000\000\
\\000\000\
\\119\000\039\004\133\000\038\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\109\000\041\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\043\004\090\000\206\002\091\000\205\002\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\045\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\049\000\177\001\050\000\008\000\
\\059\000\007\000\085\000\006\000\089\000\005\000\094\000\004\000\
\\095\000\234\002\122\000\233\002\123\000\232\002\124\000\048\004\000\000\
\\007\000\025\001\129\000\125\003\000\000\
\\007\000\064\001\015\000\063\001\017\000\241\002\120\000\049\004\000\000\
\\000\000\
\\007\000\064\001\014\000\140\001\015\000\063\001\017\000\139\003\
\\018\000\138\003\113\000\051\004\000\000\
\\000\000\
\\007\000\064\001\015\000\063\001\017\000\053\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\006\000\058\004\007\000\132\000\009\000\021\000\015\000\057\004\
\\016\000\056\004\097\000\055\004\098\000\054\004\000\000\
\\006\000\058\004\007\000\132\000\009\000\021\000\015\000\057\004\
\\016\000\056\004\097\000\060\004\098\000\054\004\000\000\
\\006\000\058\004\007\000\132\000\009\000\021\000\015\000\057\004\
\\016\000\056\004\097\000\061\004\098\000\054\004\000\000\
\\006\000\058\004\007\000\132\000\009\000\021\000\015\000\057\004\
\\016\000\056\004\097\000\062\004\098\000\054\004\000\000\
\\000\000\
\\000\000\
\\078\000\214\001\079\000\063\004\000\000\
\\078\000\216\001\080\000\064\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\077\000\067\004\078\000\070\001\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\007\000\195\003\106\000\075\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\043\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\121\000\079\004\000\000\
\\121\000\080\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\014\000\140\001\018\000\139\001\022\000\138\001\025\000\137\001\
\\027\000\083\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\078\000\214\001\079\000\089\004\000\000\
\\078\000\216\001\080\000\090\004\000\000\
\\000\000\
\\000\000\
\\007\000\064\001\015\000\063\001\017\000\162\003\135\000\091\004\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\023\000\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\017\000\016\000\016\000\036\000\092\004\049\000\177\001\
\\050\000\008\000\059\000\007\000\085\000\006\000\089\000\005\000\
\\094\000\004\000\095\000\026\004\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\093\004\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\094\004\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\007\000\064\001\015\000\063\001\017\000\095\004\000\000\
\\000\000\
\\114\000\096\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\006\000\024\000\007\000\247\003\008\000\022\000\
\\009\000\021\000\010\000\020\000\012\000\019\000\013\000\018\000\
\\015\000\246\003\016\000\016\000\017\000\241\002\049\000\177\001\
\\050\000\008\000\059\000\007\000\085\000\006\000\089\000\005\000\
\\094\000\004\000\095\000\234\002\120\000\049\004\122\000\233\002\
\\123\000\232\002\124\000\045\004\000\000\
\\000\000\
\\000\000\
\\006\000\058\004\007\000\132\000\009\000\021\000\015\000\057\004\
\\016\000\056\004\097\000\097\004\098\000\054\004\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\000\000\
\\003\000\026\000\004\000\025\000\007\000\186\000\010\000\185\000\
\\012\000\019\000\013\000\018\000\015\000\017\000\016\000\016\000\
\\037\000\100\004\038\000\014\000\039\000\013\000\046\000\012\000\
\\047\000\011\000\048\000\010\000\049\000\182\000\050\000\008\000\
\\059\000\007\000\000\000\
\\000\000\
\\000\000\
\";
   numstates = 1126;
   numrules = 579;
 s = REF "";  index = REF 0;
    string_to_int = fn () = 
    {    i = *index;
         index := i+2;
         char::to_int (string::get(*s, i)) + char::to_int (string::get(*s, i+1)) * 256;
    };

    string_to_list = fn s' =
    {   len = string::length s';
        fun f () =
           if (*index < len)
           string_to_int() ! f();
           else NIL; fi;
        index := 0;
        s := s';
        f ();
   };

   string_to_pairlist =   fn (conv_key, conv_entry) =   f
   where 
         fun f ()
             =
             case (string_to_int ())
                 0 => EMPTY;
                 n => PAIR (conv_key (n - 1), conv_entry (string_to_int()), f());
             esac;
   end;

   string_to_pairlist_default =   fn (conv_key, conv_entry) =
    {   conv_row = string_to_pairlist (conv_key, conv_entry);
       fn () =
       {   default = conv_entry (string_to_int());
           row = conv_row();
          (row, default);
       };
   };

    string_to_table = fn (convert_row, s') =
    {   len = string::length s';
        fun f ()
            =
           if (*index < len)
              convert_row() ! f();
           else NIL; fi;
        s := s';
        index := 0;
        f ();
     };

stipulate
  memo = rw_vector::make_rw_vector (numstates+numrules, ERROR);
  my _ ={   fun g i
                =
                {   rw_vector::set (memo, i, REDUCE (i-numstates));
                    g (i+1);
                };

            fun f i
                =
                if   (i == numstates)
                     g i;
                else    rw_vector::set (memo, i, SHIFT (STATE i));
                         f (i+1);
                fi;

            f 0
            except
                (SUBSCRIPT|INDEX_OUT_OF_BOUNDS) =  ();
        };
herein
    entry_to_action
        =
        fn 0 =>  ACCEPT;
           1 =>  ERROR;
           j =>  rw_vector::get (memo, (j - 2));
        end;
end;

   goto_table = rw_vector::from_list (string_to_table (string_to_pairlist (NONTERM, STATE), goto_table));
   action_rows = string_to_table (string_to_pairlist_default (TERM, entry_to_action), action_rows);
   action_row_numbers = string_to_list action_row_numbers;
   action_table
    =
    {   action_row_lookup
            =
            {   a=rw_vector::from_list (action_rows);

                fn i =   rw_vector::get (a, i);
            };

        rw_vector::from_list (map action_row_lookup action_row_numbers);
    };

    lr_table::make_lr_table {
        actions => action_table,
        gotos   => goto_table,
        rule_count   => numrules,
        state_count  => numstates,
        initial_state => STATE 0   };
};
end;
stipulate include header; herein
Source_Position = Int;
Arg = ((Source_Position, Source_Position) -> error_message::Plaint_Sink);
package values { 
Semantic_Value = TM_VOID | NT_VOID  Void -> Void | ANTIQUOTE_ID Void ->  (fast_symbol::Raw_Symbol) | CHUNKL Void ->  (String) | ENDQ Void ->  (String) | CHAR Void ->  (String)
 | STRING Void ->  (String) | PRE_COMPILE_CODE Void ->  (String) | DOT_HASHETS Void ->  (String) | DOT_SLASHETS Void ->  (String) | DOT_BARETS Void ->  (String) | DOT_BROKETS Void ->  (String)
 | DOT_QUOTES Void ->  (String) | DOT_QQUOTES Void ->  (String) | DOT_BACKTICKS Void ->  (String) | BACKTICKS Void ->  (String) | FLOAT Void ->  (String) | UNT Void ->  (multiword_int::Int)
 | INT0 Void ->  (multiword_int::Int) | INT Void ->  (multiword_int::Int) | TYVAR Void ->  (fast_symbol::Raw_Symbol) | BOGUSCASE_ID Void ->  (fast_symbol::Raw_Symbol)
 | POSTFIX_OP_ID Void ->  (fast_symbol::Raw_Symbol) | PREFIX_OP_ID Void ->  (fast_symbol::Raw_Symbol) | PASSIVEOP_ID Void ->  (fast_symbol::Raw_Symbol)
 | OPERATORS_PATH Void ->  (fast_symbol::Raw_Symbol) | OPERATORS_ID Void ->  (fast_symbol::Raw_Symbol) | UPPERCASE_PATH Void ->  (fast_symbol::Raw_Symbol)
 | UPPERCASE_ID Void ->  (fast_symbol::Raw_Symbol) | MIXEDCASE_PATH Void ->  (fast_symbol::Raw_Symbol) | MIXEDCASE_ID Void ->  (fast_symbol::Raw_Symbol)
 | LOWERCASE_PATH Void ->  (fast_symbol::Raw_Symbol) | LOWERCASE_ID Void ->  (fast_symbol::Raw_Symbol) | IMPLICIT_THUNK_PARAMETER Void ->  (fast_symbol::Raw_Symbol)
 | QQ_GENERIC_EXPRESSION Void ->  (Package_Cast Generic_Api_Expression -> Generic_Expression ) | QQ_GENERIC_NAMING Void ->  (List Named_Generic )
 | QQ_GENERIC_PARAMETER_LIST Void ->  (List ( (Null_Or Symbol, Api_Expression) ) ) | QQ_GENERIC_PARAMETER Void ->  ((Null_Or Symbol, Api_Expression)) | QQ_NAMED_CLASS2ES Void ->  (List Named_Package )
 | QQ_NAMED_CLASSES Void ->  (List Named_Package ) | QQ_NAMED_PACKAGES Void ->  (List Named_Package ) | QQ_TOPLEVEL_DECLARATIONS Void ->  (Declaration)
 | QQ_MAYBE_TOPLEVEL_DECLARATIONS Void ->  (Declaration) | QQ_TOPLEVEL_DECLARATION Void ->  (Declaration) | QQ_TOPLEVEL Void ->  (Declaration) | QQ_MAYBE_PKG_ELEMENTS Void ->  (Declaration)
 | QQ_PKG_ELEMENTS Void ->  (Declaration) | QQ_PKG_ELEMENT Void ->  (Declaration) | QQ_GENERIC_ARG Void ->  (List ( (Package_Expression, Bool) ) ) | QQ_A_PACKAGE Void ->  (Package_Expression)
 | QQ_FSIG Void ->  (Generic_Api_Expression) | QQ_GENERIC_API_NAMING Void ->  (List Named_Generic_Api ) | QQ_API_NAMING Void ->  (List Named_Api )
 | QQ_MAYBE_GENERIC_API_CONSTRAINT_OP Void ->  (Package_Cast Generic_Api_Expression ) | QQ_MAYBE_API_CONSTRAINT_OP Void ->  (Package_Cast Api_Expression ) | QQ_AN_API Void ->  (Api_Expression)
 | QQ_WHERE_SPEC Void ->  (List Where_Spec ) | QQ_TYPEPATHEQN Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List List Symbol  )
 | QQ_PATHEQN Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List List Symbol  ) | QQ_SHARESPEC Void ->  (List Api_Element ) | QQ_EXCEPTION_IN_API Void ->  (List ( (Symbol, Null_Or Any_Type) ) )
 | QQ_VALUE_IN_API Void ->  (List ( (Symbol, Any_Type) ) ) | QQ_TYPE_IN_API Void ->  (List ( (Symbol, List Type_Variable, Null_Or Any_Type) ) )
 | QQ_GENERIC_IN_API Void ->  (List ( (Symbol, Generic_Api_Expression) ) ) | QQ_PACKAGE_IN_API Void ->  (List ( (Symbol, Api_Expression, Null_Or Path) ) ) | QQ_API_ELEMENT Void ->  (List Api_Element )
 | QQ_MAYBE_API_ELEMENTS Void ->  (List Api_Element ) | QQ_API_ELEMENTS Void ->  (List Api_Element ) | QQ_OPS Void ->  (List Symbol ) | QQ_DECLARATIONS Void ->  (Declaration)
 | QQ_MAYBE_DECLARATIONS Void ->  (Declaration) | QQ_OVERLOADED_EXPRESSION Void ->  (Raw_Expression) | QQ_OVERLOADED_EXPRESSIONS Void ->  (List Raw_Expression )
 | QQ_DECLARATION_OR_LOCAL Void ->  (Declaration) | QQ_DECLARATION Void ->  (Declaration) | QQ_FIXITY Void ->  (Fixity) | QQ_PACKAGE_IN_IMPORT Void ->  (List List symbol::Symbol  )
 | QQ_EB Void ->  (List Named_Exception ) | QQ_CONSTRUCTOR Void ->  ((Symbol, Null_Or Any_Type)) | QQ_CONSTRUCTORS Void ->  (List ( (Symbol, Null_Or Any_Type )) )
 | QQ_NAMED_DATATYPES Void ->  (List Named_Datatype ) | QQ_TYVAR_PC Void ->  (List Type_Variable ) | QQ_TYVARSEQ Void ->  (List Type_Variable ) | QQ_TYPE_VARIABLES Void ->  (List Type_Variable )
 | QQ_NAMED_TYPES Void ->  (List Named_Type ) | QQ_DARROW_CLAUSE Void ->  (Pattern_Clause) | QQ_EQ_CLAUSE Void ->  (Pattern_Clause) | QQ_FUN_APATS Void ->  (List Fixity_Item Case_Pattern  )
 | QQ_APATS Void ->  (List Fixity_Item Case_Pattern  ) | QQ_MESSAGE_DECLS Void ->  (List Named_Function ) | QQ_METHOD_DECLS Void ->  (List Named_Function ) | QQ_MAYBE_LAZY Void ->  (Bool)
 | QQ_FUN_DECLS Void ->  (List Named_Function ) | QQ_DARROW_CLAUSES Void ->  (List Pattern_Clause ) | QQ_FUN_CLAUSES Void ->  (List Pattern_Clause ) | QQ_RVB Void ->  (List Named_Recursive_Value )
 | QQ_CONSTRAINT Void ->  (Null_Or Any_Type ) | QQ_FIELDS Void ->  (List Named_Field ) | QQ_VB Void ->  (List Named_Value ) | QQ_OR_PAT_LIST Void ->  (List Case_Pattern )
 | QQ_PAT_LIST Void ->  (List Case_Pattern ) | QQ_PAT_2C Void ->  (List Case_Pattern ) | QQ_PLABELS Void ->  ((List ((Symbol, Case_Pattern)), Bool)) | QQ_PLABEL Void ->  ((Symbol, Case_Pattern))
 | QQ_POSTFIX_PAT Void ->  (Fixity_Item Case_Pattern ) | QQ_APAT' Void ->  (Case_Pattern) | QQ_APAT Void ->  (Fixity_Item Case_Pattern ) | QQ_FUN_APAT Void ->  (Fixity_Item Case_Pattern )
 | QQ_PATTERN Void ->  (Case_Pattern) | QQ_OT_LIST Void ->  (List Raw_Expression ) | QQ_QUOTE Void ->  (List Raw_Expression ) | QQ_EXPRESSIONS_2_N Void ->  (List Raw_Expression )
 | QQ_EXPRESSIONS_1_N Void ->  (List Raw_Expression ) | QQ_ELIFS Void ->  (Raw_Expression) | QQ_LIST_COMPREHENSION_CLAUSES Void ->  (List ( elc::List_Comprehension_Clause ) )
 | QQ_LIST_COMPREHENSION_WHERE_CLAUSE Void ->  (elc::List_Comprehension_Clause) | QQ_LIST_COMPREHENSION_FOR_CLAUSE Void ->  (elc::List_Comprehension_Clause)
 | QQ_LIST_COMPREHENSION_RESULT_CLAUSE Void ->  (elc::List_Comprehension_Clause) | QQ_LIST_COMPREHENSION Void ->  (Raw_Expression) | QQ_ATOMIC_EXP Void ->  (Raw_Expression)
 | QQ_DOT_EXP Void ->  (List Fixity_Item Raw_Expression  ) | QQ_POSTFIX_EXP Void ->  (List Fixity_Item Raw_Expression  ) | QQ_PREFIX_EXP Void ->  (List Fixity_Item Raw_Expression  )
 | QQ_APP_EXP Void ->  (List Fixity_Item Raw_Expression  ) | QQ_DECLARATION_OR_EXPRESSION Void ->  (Declaration) | QQ_BLOCK_DECLARATIONS_AND_EXPRESSIONS Void ->  (List Declaration )
 | QQ_BLOCK_CONTENTS Void ->  (Raw_Expression) | QQ_REGULAR_EXPRESSIONS Void ->  (List ( Regular_Expression ) ) | QQ_REGULAR_EXPRESSION Void ->  (Regular_Expression)
 | QQ_MODIFIED_REGULAR_EXPRESSION Void ->  (Regular_Expression) | QQ_EXPRESSIONC Void ->  (Raw_Expression) | QQ_EXPRESSIONB Void ->  (Raw_Expression) | QQ_EXPRESSION Void ->  (Raw_Expression)
 | QQ_LOOP_DECLARATIONS Void ->  (List ( (Declaration, Int, Int) ) ) | QQ_INIT_EXPRESSIONS Void ->  (List ( ((Raw_Symbol, Int, Int), (Raw_Expression, Int, Int))) )
 | QQ_RECORD_ELEMENTS Void ->  (List ( (Symbol, Raw_Expression)) ) | QQ_RECORD_ELEMENT Void ->  ((Symbol, Raw_Expression)) | QQ_DARROW_RULE Void ->  (Case_Rule) | QQ_EQ_RULE Void ->  (Case_Rule)
 | QQ_DARROW_RULES Void ->  (List Case_Rule ) | QQ_CASE_MATCH Void ->  (List Case_Rule ) | QQ_TY0_PC Void ->  (List Any_Type ) | QQ_ANYTYPE Void ->  (Any_Type) | QQ_TUPLE_TY Void ->  (List Any_Type )
 | QQ_ANYTYPE' Void ->  (Any_Type) | QQ_TYPED_SELECTORS Void ->  (List ( (Symbol, Any_Type) ) ) | QQ_TYPED_SELECTOR Void ->  ((Symbol, Any_Type)) | QQ_TYP Void ->  (List Symbol )
 | QQ_SELECTOR Void ->  (Symbol) | QQ_VALUE_PATH Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List Symbol ) | QQ_UPPERCASE Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List Symbol )
 | QQ_MIXEDCASE Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List Symbol ) | QQ_LOWERCASE Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List Symbol )
 | QQ_OPERATORS_PATH Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List Symbol ) | QQ_LOWERCASE_PATH Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List Symbol )
 | QQ_MIXEDCASE_PATH Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List Symbol ) | QQ_UPPERCASE_PATH Void ->  ((fast_symbol::Raw_Symbol -> Symbol) -> List Symbol )
 | QQ_INT Void ->  (multiword_int::Int) | QQ_PACKAGE Void ->  (Void) | QQ_BAR Void ->  (fast_symbol::Raw_Symbol) | QQ_OPERATORS_ID Void ->  (fast_symbol::Raw_Symbol)
 | QQ_LVALUE_OR_BAR Void ->  (fast_symbol::Raw_Symbol) | QQ_LOWERCASE_ID Void ->  (fast_symbol::Raw_Symbol) | QQ_LVALUE_ID Void ->  (fast_symbol::Raw_Symbol)
 | QQ_POSTFIX_OP Void ->  (fast_symbol::Raw_Symbol) | QQ_PREFIX_OP Void ->  (fast_symbol::Raw_Symbol) | QQ_NONPREFIX_VALUE_OR_BAR Void ->  (fast_symbol::Raw_Symbol)
 | QQ_VALUE_OR_BAR Void ->  (fast_symbol::Raw_Symbol) | QQ_VALUE_ID Void ->  (fast_symbol::Raw_Symbol);
};
Semantic_Value = values::Semantic_Value;
Result = Declaration;
end;
package error_recovery{
include lr_table;
infix my 60 @@;
fun x @@ y = y ! x;
is_keyword =
fn (TERM 31) => TRUE; (TERM 32) => TRUE; (TERM 35) => TRUE; (TERM 36) => TRUE; (TERM 37) => TRUE; (TERM 38) => TRUE; (TERM 39) => TRUE; (TERM 40) => TRUE; (TERM 41) => TRUE; (TERM 42) => TRUE; (TERM 
45) => TRUE; (TERM 47) => TRUE; (TERM 48) => TRUE; (TERM 132) => TRUE; (TERM 133) => TRUE; (TERM 134) => TRUE; (TERM 135) => TRUE; (TERM 138) => TRUE; (TERM 130) => TRUE; (TERM 140) => TRUE; (TERM 141
) => TRUE; (TERM 143) => TRUE; (TERM 144) => TRUE; (TERM 145) => TRUE; (TERM 146) => TRUE; (TERM 148) => TRUE; (TERM 149) => TRUE; (TERM 150) => TRUE; (TERM 152) => TRUE; (TERM 154) => TRUE; (TERM 33)
 => TRUE; (TERM 156) => TRUE; (TERM 158) => TRUE; (TERM 161) => TRUE; (TERM 163) => TRUE; (TERM 164) => TRUE; (TERM 176) => TRUE; (TERM 177) => TRUE; _ => FALSE; end;
my preferred_change:   List( (List( Terminal ), List( Terminal )) ) = 
(NIL
, NIL
 @@ (TERM 149)) ! 
(NIL
, NIL
 @@ (TERM 40)) ! 
(NIL
, NIL
 @@ (TERM 173)) ! 
(NIL
, NIL
 @@ (TERM 1)) ! 
(NIL
 @@ (TERM 48), NIL
 @@ (TERM 43)) ! 
(NIL
 @@ (TERM 43), NIL
 @@ (TERM 48)) ! 
(NIL
 @@ (TERM 32), NIL
 @@ (TERM 177)) ! 
(NIL
 @@ (TERM 1), NIL
 @@ (TERM 171)) ! 
(NIL
 @@ (TERM 171), NIL
 @@ (TERM 1)) ! 
(NIL
, NIL
 @@ (TERM 3) @@ (TERM 40)) ! 
NIL;
no_shift = 
fn (TERM 0) => TRUE; _ => FALSE; end;
show_terminal =
fn (TERM 0) => "EOF"
; (TERM 1) => "SEMI"
; (TERM 2) => "IMPLICIT_THUNK_PARAMETER"
; (TERM 3) => "LOWERCASE_ID"
; (TERM 4) => "LOWERCASE_PATH"
; (TERM 5) => "MIXEDCASE_ID"
; (TERM 6) => "MIXEDCASE_PATH"
; (TERM 7) => "UPPERCASE_ID"
; (TERM 8) => "UPPERCASE_PATH"
; (TERM 9) => "OPERATORS_ID"
; (TERM 10) => "OPERATORS_PATH"
; (TERM 11) => "PASSIVEOP_ID"
; (TERM 12) => "PREFIX_OP_ID"
; (TERM 13) => "POSTFIX_OP_ID"
; (TERM 14) => "BOGUSCASE_ID"
; (TERM 15) => "TYVAR"
; (TERM 16) => "INT"
; (TERM 17) => "INT0"
; (TERM 18) => "UNT"
; (TERM 19) => "FLOAT"
; (TERM 20) => "BACKTICKS"
; (TERM 21) => "DOT_BACKTICKS"
; (TERM 22) => "DOT_QQUOTES"
; (TERM 23) => "DOT_QUOTES"
; (TERM 24) => "DOT_BROKETS"
; (TERM 25) => "DOT_BARETS"
; (TERM 26) => "DOT_SLASHETS"
; (TERM 27) => "DOT_HASHETS"
; (TERM 28) => "PRE_COMPILE_CODE"
; (TERM 29) => "STRING"
; (TERM 30) => "CHAR"
; (TERM 31) => "ABSTYPE_T"
; (TERM 32) => "ALSO_T"
; (TERM 33) => "API_T"
; (TERM 34) => "ARROW"
; (TERM 35) => "AS_T"
; (TERM 36) => "CASE_T"
; (TERM 37) => "CLASS_T"
; (TERM 38) => "CLASS2_T"
; (TERM 39) => "DOTDOTDOT"
; (TERM 40) => "ELSE_T"
; (TERM 41) => "ELIF_T"
; (TERM 42) => "END_T"
; (TERM 43) => "EQUAL_OP"
; (TERM 44) => "EQEQ_OP"
; (TERM 45) => "EQTYPE_T"
; (TERM 46) => "ESAC_T"
; (TERM 47) => "EXCEPTION_T"
; (TERM 48) => "DARROW"
; (TERM 49) => "PRE_PLUSPLUS"
; (TERM 50) => "PLUS_PLUS"
; (TERM 51) => "PLUSPLUS_EQ"
; (TERM 52) => "POST_PLUSPLUS"
; (TERM 53) => "PRE_DASHDASH"
; (TERM 54) => "DASH_DASH"
; (TERM 55) => "DASHDASH_EQ"
; (TERM 56) => "POST_DASHDASH"
; (TERM 57) => "PRE_BAR"
; (TERM 58) => "BAR"
; (TERM 59) => "BAR_EQ"
; (TERM 60) => "POST_BAR"
; (TERM 61) => "PRE_LANGLE"
; (TERM 62) => "LANGLE"
; (TERM 63) => "RANGLE"
; (TERM 64) => "POST_RANGLE"
; (TERM 65) => "PRE_LBRACE"
; (TERM 66) => "LBRACE"
; (TERM 67) => "RBRACE"
; (TERM 68) => "POST_RBRACE"
; (TERM 69) => "LBRACKET"
; (TERM 70) => "POST_LBRACKET"
; (TERM 71) => "PRE_AMPER"
; (TERM 72) => "AMPER"
; (TERM 73) => "AMPER_EQ"
; (TERM 74) => "POST_AMPER"
; (TERM 75) => "PRE_ATSIGN"
; (TERM 76) => "ATSIGN"
; (TERM 77) => "ATSIGN_EQ"
; (TERM 78) => "POST_ATSIGN"
; (TERM 79) => "PRE_BACK"
; (TERM 80) => "BACK"
; (TERM 81) => "BACK_EQ"
; (TERM 82) => "POST_BACK"
; (TERM 83) => "PRE_BANG"
; (TERM 84) => "BANG"
; (TERM 85) => "BANG_EQ"
; (TERM 86) => "POST_BANG"
; (TERM 87) => "PRE_BUCK"
; (TERM 88) => "BUCK"
; (TERM 89) => "BUCK_EQ"
; (TERM 90) => "POST_BUCK"
; (TERM 91) => "PRE_CARET"
; (TERM 92) => "CARET"
; (TERM 93) => "CARET_EQ"
; (TERM 94) => "POST_CARET"
; (TERM 95) => "PRE_DASH"
; (TERM 96) => "DASH"
; (TERM 97) => "DASH_EQ"
; (TERM 98) => "POST_DASH"
; (TERM 99) => "PRE_DOT"
; (TERM 100) => "DOT"
; (TERM 101) => "DOT_EQ"
; (TERM 102) => "PRE_DOTDOT"
; (TERM 103) => "DOTDOT"
; (TERM 104) => "DOTDOT_EQ"
; (TERM 105) => "POST_DOTDOT"
; (TERM 106) => "PRE_PERCNT"
; (TERM 107) => "PERCNT"
; (TERM 108) => "PERCNT_EQ"
; (TERM 109) => "POST_PERCNT"
; (TERM 110) => "PRE_PLUS"
; (TERM 111) => "PLUS"
; (TERM 112) => "PLUS_EQ"
; (TERM 113) => "POST_PLUS"
; (TERM 114) => "PRE_QMARK"
; (TERM 115) => "QMARK"
; (TERM 116) => "QMARK_EQ"
; (TERM 117) => "POST_QMARK"
; (TERM 118) => "PRE_SLASH"
; (TERM 119) => "SLASH"
; (TERM 120) => "SLASH_EQ"
; (TERM 121) => "POST_SLASH"
; (TERM 122) => "PRE_STAR"
; (TERM 123) => "STAR"
; (TERM 124) => "STAR_EQ"
; (TERM 125) => "POST_STAR"
; (TERM 126) => "PRE_TILDA"
; (TERM 127) => "TILDA"
; (TERM 128) => "TILDA_EQ"
; (TERM 129) => "POST_TILDA"
; (TERM 130) => "EXCEPT_T"
; (TERM 131) => "FI_T"
; (TERM 132) => "FIELD_T"
; (TERM 133) => "FN_T"
; (TERM 134) => "FOR_T"
; (TERM 135) => "FUN_T"
; (TERM 136) => "FPRINTF_T"
; (TERM 137) => "POSTFIX_ARROW"
; (TERM 138) => "GENERIC_T"
; (TERM 139) => "HASH"
; (TERM 140) => "HEREIN_T"
; (TERM 141) => "IF_T"
; (TERM 142) => "IN_T"
; (TERM 143) => "INCLUDE_T"
; (TERM 144) => "INFIX_T"
; (TERM 145) => "INFIXR_T"
; (TERM 146) => "LAZY_T"
; (TERM 147) => "MESSAGE_T"
; (TERM 148) => "METHOD_T"
; (TERM 149) => "MY_T"
; (TERM 150) => "NONFIX_T"
; (TERM 151) => "OVERLOADED_T"
; (TERM 152) => "RAISE_T"
; (TERM 153) => "RECURSIVE_T"
; (TERM 154) => "SHARING_T"
; (TERM 155) => "SPRINTF_T"
; (TERM 156) => "PACKAGE_T"
; (TERM 157) => "PRINTF_T"
; (TERM 158) => "STIPULATE_T"
; (TERM 159) => "TILDA_TILDA"
; (TERM 160) => "WHAT_WHAT"
; (TERM 161) => "WHERE_T"
; (TERM 162) => "WILD"
; (TERM 163) => "WITH_T"
; (TERM 164) => "WITHTYPE_T"
; (TERM 165) => "COLON"
; (TERM 166) => "WEAK_PACKAGE_CAST"
; (TERM 167) => "PARTIAL_PACKAGE_CAST"
; (TERM 168) => "COLON_COLON"
; (TERM 169) => "COLON_WHAT"
; (TERM 170) => "WHAT_COLON"
; (TERM 171) => "COMMA"
; (TERM 172) => "DOT_LBRACE"
; (TERM 173) => "LPAREN"
; (TERM 174) => "RBRACKET"
; (TERM 175) => "RPAREN"
; (TERM 176) => "OR_T"
; (TERM 177) => "AND_T"
; (TERM 178) => "VECTORSTART"
; (TERM 179) => "BEGINQ"
; (TERM 180) => "ENDQ"
; (TERM 181) => "CHUNKL"
; (TERM 182) => "ANTIQUOTE_ID"
; _ => "bogus-term"; end;
stipulate include header; herein
errtermvalue=
fn (TERM 4) => values::LOWERCASE_PATH(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 6) => values::MIXEDCASE_PATH(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 8) => values::UPPERCASE_PATH(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 10) => values::OPERATORS_PATH(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 3) => values::LOWERCASE_ID(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 5) => values::MIXEDCASE_ID(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 7) => values::UPPERCASE_ID(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 14) => values::BOGUSCASE_ID(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 9) => values::OPERATORS_ID(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 11) => values::PASSIVEOP_ID(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 12) => values::PREFIX_OP_ID(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 13) => values::POSTFIX_OP_ID(fn () = (raw_symbol (bogus_hash, bogus_string))); 
(TERM 15) => values::TYVAR(fn () = (raw_symbol (dollar_bogus_hash, dollar_bogus_string))); 
(TERM 16) => values::INT(fn () = (multiword_int::from_int 1)); 
(TERM 17) => values::INT0(fn () = (multiword_int::from_int 0)); 
(TERM 18) => values::UNT(fn () = (multiword_int::from_int 0)); 
(TERM 19) => values::FLOAT(fn () = ("0.0")); 
(TERM 29) => values::STRING(fn () = ("")); 
(TERM 30) => values::CHAR(fn () = ("a")); 
_ => values::TM_VOID;
 end; end;
my terms:  List( Terminal ) = NIL
 @@ (TERM 179) @@ (TERM 178) @@ (TERM 177) @@ (TERM 176) @@ (TERM 175) @@ (TERM 174) @@ (TERM 173) @@ (TERM 172) @@ (TERM 171) @@ (TERM 170) @@ (TERM 169) @@ (TERM 168) @@ (TERM 167) @@ (TERM 166) @@ 
(TERM 165) @@ (TERM 164) @@ (TERM 163) @@ (TERM 162) @@ (TERM 161) @@ (TERM 160) @@ (TERM 159) @@ (TERM 158) @@ (TERM 157) @@ (TERM 156) @@ (TERM 155) @@ (TERM 154) @@ (TERM 153) @@ (TERM 152) @@ 
(TERM 151) @@ (TERM 150) @@ (TERM 149) @@ (TERM 148) @@ (TERM 147) @@ (TERM 146) @@ (TERM 145) @@ (TERM 144) @@ (TERM 143) @@ (TERM 142) @@ (TERM 141) @@ (TERM 140) @@ (TERM 139) @@ (TERM 138) @@ 
(TERM 137) @@ (TERM 136) @@ (TERM 135) @@ (TERM 134) @@ (TERM 133) @@ (TERM 132) @@ (TERM 131) @@ (TERM 130) @@ (TERM 129) @@ (TERM 128) @@ (TERM 127) @@ (TERM 126) @@ (TERM 125) @@ (TERM 124) @@ 
(TERM 123) @@ (TERM 122) @@ (TERM 121) @@ (TERM 120) @@ (TERM 119) @@ (TERM 118) @@ (TERM 117) @@ (TERM 116) @@ (TERM 115) @@ (TERM 114) @@ (TERM 113) @@ (TERM 112) @@ (TERM 111) @@ (TERM 110) @@ 
(TERM 109) @@ (TERM 108) @@ (TERM 107) @@ (TERM 106) @@ (TERM 105) @@ (TERM 104) @@ (TERM 103) @@ (TERM 102) @@ (TERM 101) @@ (TERM 100) @@ (TERM 99) @@ (TERM 98) @@ (TERM 97) @@ (TERM 96) @@ (TERM 95
) @@ (TERM 94) @@ (TERM 93) @@ (TERM 92) @@ (TERM 91) @@ (TERM 90) @@ (TERM 89) @@ (TERM 88) @@ (TERM 87) @@ (TERM 86) @@ (TERM 85) @@ (TERM 84) @@ (TERM 83) @@ (TERM 82) @@ (TERM 81) @@ (TERM 80) @@ 
(TERM 79) @@ (TERM 78) @@ (TERM 77) @@ (TERM 76) @@ (TERM 75) @@ (TERM 74) @@ (TERM 73) @@ (TERM 72) @@ (TERM 71) @@ (TERM 70) @@ (TERM 69) @@ (TERM 68) @@ (TERM 67) @@ (TERM 66) @@ (TERM 65) @@ 
(TERM 64) @@ (TERM 63) @@ (TERM 62) @@ (TERM 61) @@ (TERM 60) @@ (TERM 59) @@ (TERM 58) @@ (TERM 57) @@ (TERM 56) @@ (TERM 55) @@ (TERM 54) @@ (TERM 53) @@ (TERM 52) @@ (TERM 51) @@ (TERM 50) @@ 
(TERM 49) @@ (TERM 48) @@ (TERM 47) @@ (TERM 46) @@ (TERM 45) @@ (TERM 44) @@ (TERM 43) @@ (TERM 42) @@ (TERM 41) @@ (TERM 40) @@ (TERM 39) @@ (TERM 38) @@ (TERM 37) @@ (TERM 36) @@ (TERM 35) @@ 
(TERM 34) @@ (TERM 33) @@ (TERM 32) @@ (TERM 31) @@ (TERM 1) @@ (TERM 0);
};
package actions {
exception MLY_ACTION Int;
stipulate include header; herein
actions = 
fn (i392, default_position, stack, 
    (error): Arg) = 
case (i392, stack)
  ( 0,  ( ( _,  ( values::UPPERCASE_PATH uppercase_path1,  uppercase_path1left,  uppercase_path1right)) !  rest671)) => {  my  result = values::QQ_UPPERCASE_PATH (fn  _ =  {  my  (uppercase_path as 
uppercase_path1) = uppercase_path1 ();
 (
   # Handle a string like "foo::bar::ZOT".
                                            # This needs to become a string of typed symbols
                                            # [foo, bar, ZOT], but we don't know what kind
                                            # to make the last symbol yet, so we return
                                            # a closure that will generate the desired list
                                            # once supplied with the proper symbol-making
                                            # function ('kind'):
                                            #
                                            {   convert tokens
                                                where
                                                    uppercase_path ->   RAWSYM( word, string );         # String will be "foo::bar::ZOT" or such.

                                                    tokens = string::tokens
                                                                 (fn c =  c == ':')             # Break string into tokens at ':' boundaries.
                                                                 string;

                                                    fun convert []
                                                            =>
                                                            {   exception IMPOSSIBLE;
                                                                raise exception IMPOSSIBLE;             # XXX BUGGO FIXME Should use some standard global exception here
                                                            };

                                                        convert [a]
                                                            =>
                                                            (fn kind =  [kind (RAWSYM(hs::hash_string a, a))]);

                                                         convert (first ! rest)
                                                             =>
                                                             {   rest = convert rest;

                                                                 (fn kind =  make_package_symbol (RAWSYM(hs::hash_string first, first))
                                                                             !
                                                                             rest kind);
                                                             };
                                                    end;
                                                end;
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 12,  ( result,  uppercase_path1left,  uppercase_path1right),  rest671);
 } 
;  ( 1,  ( ( _,  ( values::MIXEDCASE_PATH mixedcase_path1,  mixedcase_path1left,  mixedcase_path1right)) !  rest671)) => {  my  result = values::QQ_MIXEDCASE_PATH (fn  _ =  {  my  (mixedcase_path as 
mixedcase_path1) = mixedcase_path1 ();
 (
   # Handle a string like "foo::bar::Zot".
                                            # This needs to become a string of typed symbols
                                            # [foo, bar, Zot], but we don't know what kind
                                            # to make the last symbol yet, so we return
                                            # a closure that will generate the desired list
                                            # once supplied with the proper symbol-making
                                            # function ('kind'):
                                            #
                                            {   convert tokens
                                                where
                                                    mixedcase_path ->   RAWSYM( word, string ); # String will be "foo::bar::Zot" or such.

                                                    tokens = string::tokens
                                                                 (fn c =   c == ':')            # Break string into tokens at ':' boundaries.
                                                                 string;

                                                    fun convert []
                                                            =>
                                                            {   exception IMPOSSIBLE;
                                                                raise exception IMPOSSIBLE;             # XXX BUGGO FIXME Should use some standard global exception here
                                                            };

                                                        convert [a]
                                                            =>
                                                            (fn kind =  [kind (RAWSYM(hs::hash_string a, a))]);

                                                         convert (first ! rest)
                                                             =>
                                                             {   rest = convert rest;

                                                                 (fn kind =  make_package_symbol (RAWSYM(hs::hash_string first, first))
                                                                             !
                                                                             rest kind);
                                                             };
                                                    end;
                                                end;
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 13,  ( result,  mixedcase_path1left,  mixedcase_path1right),  rest671);
 } 
;  ( 2,  ( ( _,  ( values::LOWERCASE_PATH lowercase_path1,  lowercase_path1left,  lowercase_path1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_PATH (fn  _ =  {  my  (lowercase_path as 
lowercase_path1) = lowercase_path1 ();
 (
   # Handle a string like "foo::bar::zot".
                                            # This needs to become a list of typed symbols
                                            # [foo, bar, zot], but we don't know what kind
                                            # to make the last symbol yet, so we return
                                            # a closure that will generate the desired list
                                            # once supplied with the proper symbol-making
                                            # function ('kind'):
                                            #
                                            {   convert tokens
                                                where
                                                    lowercase_path ->   RAWSYM( _, path_string );                       # String will be "foo::bar::zot" or such.

                                                    tokens = string::tokens
                                                                 (fn c =   c == ':')            # Break string into tokens at ':' boundaries.
                                                                 path_string;

                                                    fun convert []
                                                            =>
                                                            {   exception IMPOSSIBLE;
                                                                raise exception IMPOSSIBLE;             # XXX BUGGO FIXME Should use some standard global exception here
                                                            };

                                                        convert [a]
                                                            =>
                                                            (fn kind =  [kind (RAWSYM(hs::hash_string a, a))]);

                                                         convert (first ! rest)
                                                             =>
                                                             {   rest = convert rest;

                                                                 (fn kind =  make_package_symbol (RAWSYM(hs::hash_string first, first))
                                                                             !
                                                                             rest kind);
                                                             };
                                                    end;
                                                end;
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 14,  ( result,  lowercase_path1left,  lowercase_path1right),  rest671);
 } 
;  ( 3,  ( ( _,  ( values::OPERATORS_PATH operators_path1,  operators_path1left,  operators_path1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_PATH (fn  _ =  {  my  (operators_path as 
operators_path1) = operators_path1 ();
 (
   # Handle a string like "foo::bar::(++)".
                                            # This needs to become a string of typed symbols
                                            # [foo, bar, ++], but we don't know what kind
                                            # to make the last symbol yet, so we return
                                            # a closure that will generate the desired list
                                            # once supplied with the proper symbol-making
                                            # function ('kind'):
                                            #
                                            {   convert tokens
                                                where
                                                    operators_path ->   RAWSYM( word, string );         # 'string' will be "foo::bar::(++)" or such.

                                                    tokens = explode_path string;                       # Convert "foo::bar::(++)" to ["foo", "bar", "(++)"]

                                                    fun convert []
                                                            =>
                                                            {   exception IMPOSSIBLE;
                                                                raise exception IMPOSSIBLE;             # XXX BUGGO FIXME Should use some standard global exception here
                                                            };

                                                        convert [a]             # 'a' will be `(++)` or such.
                                                            =>
                                                            {   a = substring::from_string  a;          # Convert `(++)` from String to Substring.
                                                                a = substring::drop_first 1 a;          # Drop left  paren.
                                                                a = substring::drop_last  1 a;          # Drop right paren.
                                                                a = substring::to_string    a;          # Convert back to a string.
                                                                #
                                                                (fn kind =  [kind (RAWSYM(hs::hash_string a, a))]);
                                                            };

                                                         convert (first ! rest)
                                                             =>
                                                             {   rest = convert rest;

                                                                 (fn kind =  make_package_symbol (RAWSYM(hs::hash_string first, first))
                                                                             !
                                                                             rest kind);
                                                             };
                                                    end;
                                                end;
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 15,  ( result,  operators_path1left,  operators_path1right),  rest671);
 } 
;  ( 4,  ( ( _,  ( values::INT int1,  int1left,  int1right)) !  rest671)) => {  my  result = values::QQ_INT (fn  _ =  {  my  (int as int1) = int1 ();
 (int);
 } );
 ( lr_table::NONTERM 11,  ( result, 
 int1left,  int1right),  rest671);
 } 
;  ( 5,  ( ( _,  ( values::INT0 int01,  int01left,  int01right)) !  rest671)) => {  my  result = values::QQ_INT (fn  _ =  {  my  (int0 as int01) = int01 ();
 (int0);
 } );
 ( lr_table::NONTERM 11,  ( 
result,  int01left,  int01right),  rest671);
 } 
;  ( 6,  ( ( _,  ( values::UPPERCASE_ID uppercase_id1,  uppercase_id1left,  uppercase_id1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  {  my  (uppercase_id as 
uppercase_id1) = uppercase_id1 ();
 (uppercase_id);
 } );
 ( lr_table::NONTERM 2,  ( result,  uppercase_id1left,  uppercase_id1right),  rest671);
 } 
;  ( 7,  ( ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left,  lowercase_id1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  {  my  (lowercase_id as 
lowercase_id1) = lowercase_id1 ();
 (lowercase_id);
 } );
 ( lr_table::NONTERM 2,  ( result,  lowercase_id1left,  lowercase_id1right),  rest671);
 } 
;  ( 8,  ( ( _,  ( values::QQ_BAR bar1,  bar1left,  bar1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  {  my  (bar as bar1) = bar1 ();
 (bar);
 } );
 ( 
lr_table::NONTERM 2,  ( result,  bar1left,  bar1right),  rest671);
 } 
;  ( 9,  ( ( _,  ( values::OPERATORS_ID operators_id1,  operators_id1left,  operators_id1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  {  my  (operators_id as 
operators_id1) = operators_id1 ();
 (operators_id);
 } );
 ( lr_table::NONTERM 2,  ( result,  operators_id1left,  operators_id1right),  rest671);
 } 
;  ( 10,  ( ( _,  ( _,  amper1left,  amper1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (amper_hash,    amper_string)));
 ( lr_table::NONTERM 2,  ( 
result,  amper1left,  amper1right),  rest671);
 } 
;  ( 11,  ( ( _,  ( _,  atsign1left,  atsign1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (atsign_hash,   atsign_string)));
 ( lr_table::NONTERM 2,  
( result,  atsign1left,  atsign1right),  rest671);
 } 
;  ( 12,  ( ( _,  ( _,  back1left,  back1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (back_hash,     back_string)));
 ( lr_table::NONTERM 2,  ( 
result,  back1left,  back1right),  rest671);
 } 
;  ( 13,  ( ( _,  ( _,  bang1left,  bang1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (bang_hash,     bang_string)));
 ( lr_table::NONTERM 2,  ( 
result,  bang1left,  bang1right),  rest671);
 } 
;  ( 14,  ( ( _,  ( _,  buck1left,  buck1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (buck_hash,     buck_string)));
 ( lr_table::NONTERM 2,  ( 
result,  buck1left,  buck1right),  rest671);
 } 
;  ( 15,  ( ( _,  ( _,  caret1left,  caret1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (caret_hash,    caret_string)));
 ( lr_table::NONTERM 2,  ( 
result,  caret1left,  caret1right),  rest671);
 } 
;  ( 16,  ( ( _,  ( _,  dash1left,  dash1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (dash_hash,     dash_string)));
 ( lr_table::NONTERM 2,  ( 
result,  dash1left,  dash1right),  rest671);
 } 
;  ( 17,  ( ( _,  ( _,  percnt1left,  percnt1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (percnt_hash,   percnt_string)));
 ( lr_table::NONTERM 2,  
( result,  percnt1left,  percnt1right),  rest671);
 } 
;  ( 18,  ( ( _,  ( _,  plus1left,  plus1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (plus_hash,     plus_string)));
 ( lr_table::NONTERM 2,  ( 
result,  plus1left,  plus1right),  rest671);
 } 
;  ( 19,  ( ( _,  ( _,  qmark1left,  qmark1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (qmark_hash,    qmark_string)));
 ( lr_table::NONTERM 2,  ( 
result,  qmark1left,  qmark1right),  rest671);
 } 
;  ( 20,  ( ( _,  ( _,  slash1left,  slash1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (slash_hash,    slash_string)));
 ( lr_table::NONTERM 2,  ( 
result,  slash1left,  slash1right),  rest671);
 } 
;  ( 21,  ( ( _,  ( _,  star1left,  star1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (star_hash,     star_string)));
 ( lr_table::NONTERM 2,  ( 
result,  star1left,  star1right),  rest671);
 } 
;  ( 22,  ( ( _,  ( _,  tilda1left,  tilda1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (tilda_hash,    tilda_string)));
 ( lr_table::NONTERM 2,  ( 
result,  tilda1left,  tilda1right),  rest671);
 } 
;  ( 23,  ( ( _,  ( _,  langle1left,  langle1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (langle_hash,   langle_string)));
 ( lr_table::NONTERM 2,  
( result,  langle1left,  langle1right),  rest671);
 } 
;  ( 24,  ( ( _,  ( _,  rangle1left,  rangle1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (rangle_hash,   rangle_string)));
 ( lr_table::NONTERM 2,  
( result,  rangle1left,  rangle1right),  rest671);
 } 
;  ( 25,  ( ( _,  ( _,  eqeq_op1left,  eqeq_op1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (eqeq_hash,     eqeq_string)));
 ( lr_table::NONTERM 2,  
( result,  eqeq_op1left,  eqeq_op1right),  rest671);
 } 
;  ( 26,  ( ( _,  ( _,  plus_plus1left,  plus_plus1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (plusplus_hash, plusplus_string)));
 ( 
lr_table::NONTERM 2,  ( result,  plus_plus1left,  plus_plus1right),  rest671);
 } 
;  ( 27,  ( ( _,  ( _,  dash_dash1left,  dash_dash1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (dashdash_hash, dashdash_string)));
 ( 
lr_table::NONTERM 2,  ( result,  dash_dash1left,  dash_dash1right),  rest671);
 } 
;  ( 28,  ( ( _,  ( _,  dotdot1left,  dotdot1right)) !  rest671)) => {  my  result = values::QQ_NONPREFIX_VALUE_OR_BAR (fn  _ =  (raw_symbol (dotdot_hash,   dotdot_string)));
 ( lr_table::NONTERM 2,  
( result,  dotdot1left,  dotdot1right),  rest671);
 } 
;  ( 29,  ( ( _,  ( values::POSTFIX_OP_ID postfix_op_id1,  postfix_op_id1left,  postfix_op_id1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  {  my  (postfix_op_id as 
postfix_op_id1) = postfix_op_id1 ();
 (postfix_op_id);
 } );
 ( lr_table::NONTERM 4,  ( result,  postfix_op_id1left,  postfix_op_id1right),  rest671);
 } 
;  ( 30,  ( ( _,  ( _,  post_amper1left,  post_amper1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postamper_hash,  postamper_string)));
 ( lr_table::NONTERM 4, 
 ( result,  post_amper1left,  post_amper1right),  rest671);
 } 
;  ( 31,  ( ( _,  ( _,  post_atsign1left,  post_atsign1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postatsign_hash, postatsign_string)));
 ( lr_table::NONTERM 
4,  ( result,  post_atsign1left,  post_atsign1right),  rest671);
 } 
;  ( 32,  ( ( _,  ( _,  post_back1left,  post_back1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postback_hash,   postback_string)));
 ( lr_table::NONTERM 4,  ( 
result,  post_back1left,  post_back1right),  rest671);
 } 
;  ( 33,  ( ( _,  ( _,  post_bang1left,  post_bang1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postbang_hash,   postbang_string)));
 ( lr_table::NONTERM 4,  ( 
result,  post_bang1left,  post_bang1right),  rest671);
 } 
;  ( 34,  ( ( _,  ( _,  post_bar1left,  post_bar1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postbar_hash,    postbar_string)));
 ( lr_table::NONTERM 4,  ( 
result,  post_bar1left,  post_bar1right),  rest671);
 } 
;  ( 35,  ( ( _,  ( _,  post_buck1left,  post_buck1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postbuck_hash,   postbuck_string)));
 ( lr_table::NONTERM 4,  ( 
result,  post_buck1left,  post_buck1right),  rest671);
 } 
;  ( 36,  ( ( _,  ( _,  post_caret1left,  post_caret1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postcaret_hash,  postcaret_string)));
 ( lr_table::NONTERM 4, 
 ( result,  post_caret1left,  post_caret1right),  rest671);
 } 
;  ( 37,  ( ( _,  ( _,  post_dash1left,  post_dash1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postdash_hash,   postdash_string)));
 ( lr_table::NONTERM 4,  ( 
result,  post_dash1left,  post_dash1right),  rest671);
 } 
;  ( 38,  ( ( _,  ( _,  post_percnt1left,  post_percnt1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postpercnt_hash, postpercnt_string)));
 ( lr_table::NONTERM 
4,  ( result,  post_percnt1left,  post_percnt1right),  rest671);
 } 
;  ( 39,  ( ( _,  ( _,  post_plus1left,  post_plus1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postplus_hash,   postplus_string)));
 ( lr_table::NONTERM 4,  ( 
result,  post_plus1left,  post_plus1right),  rest671);
 } 
;  ( 40,  ( ( _,  ( _,  post_qmark1left,  post_qmark1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (postqmark_hash,  postqmark_string)));
 ( lr_table::NONTERM 4, 
 ( result,  post_qmark1left,  post_qmark1right),  rest671);
 } 
;  ( 41,  ( ( _,  ( _,  post_star1left,  post_star1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (poststar_hash,   poststar_string)));
 ( lr_table::NONTERM 4,  ( 
result,  post_star1left,  post_star1right),  rest671);
 } 
;  ( 42,  ( ( _,  ( _,  post_tilda1left,  post_tilda1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (posttilda_hash,  posttilda_string)));
 ( lr_table::NONTERM 4, 
 ( result,  post_tilda1left,  post_tilda1right),  rest671);
 } 
;  ( 43,  ( ( _,  ( _,  post_dashdash1left,  post_dashdash1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (post_dashdash_hash,  post_dashdash_string)));
 ( 
lr_table::NONTERM 4,  ( result,  post_dashdash1left,  post_dashdash1right),  rest671);
 } 
;  ( 44,  ( ( _,  ( _,  post_plusplus1left,  post_plusplus1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (post_plusplus_hash,  post_plusplus_string)));
 ( 
lr_table::NONTERM 4,  ( result,  post_plusplus1left,  post_plusplus1right),  rest671);
 } 
;  ( 45,  ( ( _,  ( _,  post_dotdot1left,  post_dotdot1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_OP (fn  _ =  (raw_symbol (post_dotdot_hash,  post_dotdot_string)));
 ( 
lr_table::NONTERM 4,  ( result,  post_dotdot1left,  post_dotdot1right),  rest671);
 } 
;  ( 46,  ( ( _,  ( values::PREFIX_OP_ID prefix_op_id1,  prefix_op_id1left,  prefix_op_id1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  {  my  (prefix_op_id as prefix_op_id1)
 = prefix_op_id1 ();
 (prefix_op_id);
 } );
 ( lr_table::NONTERM 3,  ( result,  prefix_op_id1left,  prefix_op_id1right),  rest671);
 } 
;  ( 47,  ( ( _,  ( _,  pre_amper1left,  pre_amper1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (preamper_hash,  preamper_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_amper1left,  pre_amper1right),  rest671);
 } 
;  ( 48,  ( ( _,  ( _,  pre_atsign1left,  pre_atsign1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (preatsign_hash, preatsign_string)));
 ( lr_table::NONTERM 3,  (
 result,  pre_atsign1left,  pre_atsign1right),  rest671);
 } 
;  ( 49,  ( ( _,  ( _,  pre_back1left,  pre_back1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (preback_hash,   preback_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_back1left,  pre_back1right),  rest671);
 } 
;  ( 50,  ( ( _,  ( _,  pre_bang1left,  pre_bang1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (prebang_hash,   prebang_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_bang1left,  pre_bang1right),  rest671);
 } 
;  ( 51,  ( ( _,  ( _,  pre_bar1left,  pre_bar1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (prebar_hash,    prebar_string)));
 ( lr_table::NONTERM 3,  ( result, 
 pre_bar1left,  pre_bar1right),  rest671);
 } 
;  ( 52,  ( ( _,  ( _,  pre_caret1left,  pre_caret1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (precaret_hash,  precaret_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_caret1left,  pre_caret1right),  rest671);
 } 
;  ( 53,  ( ( _,  ( _,  pre_dash1left,  pre_dash1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (predash_hash,   predash_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_dash1left,  pre_dash1right),  rest671);
 } 
;  ( 54,  ( ( _,  ( _,  pre_plus1left,  pre_plus1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (preplus_hash,   preplus_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_plus1left,  pre_plus1right),  rest671);
 } 
;  ( 55,  ( ( _,  ( _,  pre_qmark1left,  pre_qmark1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (preqmark_hash,  preqmark_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_qmark1left,  pre_qmark1right),  rest671);
 } 
;  ( 56,  ( ( _,  ( _,  pre_star1left,  pre_star1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (prestar_hash,   prestar_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_star1left,  pre_star1right),  rest671);
 } 
;  ( 57,  ( ( _,  ( _,  pre_tilda1left,  pre_tilda1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_OP (fn  _ =  (raw_symbol (pretilda_hash,  pretilda_string)));
 ( lr_table::NONTERM 3,  ( 
result,  pre_tilda1left,  pre_tilda1right),  rest671);
 } 
;  ( 58,  ( ( _,  ( values::UPPERCASE_ID uppercase_id1,  uppercase_id1left,  uppercase_id1right)) !  rest671)) => {  my  result = values::QQ_VALUE_OR_BAR (fn  _ =  {  my  (uppercase_id as 
uppercase_id1) = uppercase_id1 ();
 (uppercase_id);
 } );
 ( lr_table::NONTERM 1,  ( result,  uppercase_id1left,  uppercase_id1right),  rest671);
 } 
;  ( 59,  ( ( _,  ( values::QQ_LVALUE_OR_BAR lvalue_or_bar1,  lvalue_or_bar1left,  lvalue_or_bar1right)) !  rest671)) => {  my  result = values::QQ_VALUE_OR_BAR (fn  _ =  {  my  (lvalue_or_bar as 
lvalue_or_bar1) = lvalue_or_bar1 ();
 (lvalue_or_bar);
 } );
 ( lr_table::NONTERM 1,  ( result,  lvalue_or_bar1left,  lvalue_or_bar1right),  rest671);
 } 
;  ( 60,  ( ( _,  ( values::UPPERCASE_ID uppercase_id1,  uppercase_id1left,  uppercase_id1right)) !  rest671)) => {  my  result = values::QQ_VALUE_ID (fn  _ =  {  my  (uppercase_id as uppercase_id1) =
 uppercase_id1 ();
 (uppercase_id);
 } );
 ( lr_table::NONTERM 0,  ( result,  uppercase_id1left,  uppercase_id1right),  rest671);
 } 
;  ( 61,  ( ( _,  ( values::QQ_LVALUE_ID lvalue_id1,  lvalue_id1left,  lvalue_id1right)) !  rest671)) => {  my  result = values::QQ_VALUE_ID (fn  _ =  {  my  (lvalue_id as lvalue_id1) = lvalue_id1 ()
;
 (lvalue_id);
 } );
 ( lr_table::NONTERM 0,  ( result,  lvalue_id1left,  lvalue_id1right),  rest671);
 } 
;  ( 62,  ( ( _,  ( values::QQ_LVALUE_ID lvalue_id1,  lvalue_id1left,  lvalue_id1right)) !  rest671)) => {  my  result = values::QQ_LVALUE_OR_BAR (fn  _ =  {  my  (lvalue_id as lvalue_id1) = 
lvalue_id1 ();
 (lvalue_id);
 } );
 ( lr_table::NONTERM 7,  ( result,  lvalue_id1left,  lvalue_id1right),  rest671);
 } 
;  ( 63,  ( ( _,  ( values::QQ_BAR bar1,  bar1left,  bar1right)) !  rest671)) => {  my  result = values::QQ_LVALUE_OR_BAR (fn  _ =  {  my  (bar as bar1) = bar1 ();
 (bar);
 } );
 ( lr_table::NONTERM 7
,  ( result,  bar1left,  bar1right),  rest671);
 } 
;  ( 64,  ( ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left,  lowercase_id1right)) !  rest671)) => {  my  result = values::QQ_LVALUE_ID (fn  _ =  {  my  (lowercase_id as 
lowercase_id1) = lowercase_id1 ();
 (lowercase_id);
 } );
 ( lr_table::NONTERM 5,  ( result,  lowercase_id1left,  lowercase_id1right),  rest671);
 } 
;  ( 65,  ( ( _,  ( values::QQ_OPERATORS_ID operators_id1,  operators_id1left,  operators_id1right)) !  rest671)) => {  my  result = values::QQ_LVALUE_ID (fn  _ =  {  my  (operators_id as 
operators_id1) = operators_id1 ();
 (operators_id);
 } );
 ( lr_table::NONTERM 5,  ( result,  operators_id1left,  operators_id1right),  rest671);
 } 
;  ( 66,  ( ( _,  ( values::LOWERCASE_ID lowercase_id1,  lowercase_id1left,  lowercase_id1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  {  my  (lowercase_id as 
lowercase_id1) = lowercase_id1 ();
 (lowercase_id);
 } );
 ( lr_table::NONTERM 6,  ( result,  lowercase_id1left,  lowercase_id1right),  rest671);
 } 
;  ( 67,  ( ( _,  ( _,  field_t1left,  field_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (     field_hash,       field_string)));
 ( lr_table::NONTERM 6,  (
 result,  field_t1left,  field_t1right),  rest671);
 } 
;  ( 68,  ( ( _,  ( _,  generic_t1left,  generic_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (   generic_hash,     generic_string)));
 ( lr_table::NONTERM 6
,  ( result,  generic_t1left,  generic_t1right),  rest671);
 } 
;  ( 69,  ( ( _,  ( _,  in_t1left,  in_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (        in_hash,          in_string)));
 ( lr_table::NONTERM 6,  ( 
result,  in_t1left,  in_t1right),  rest671);
 } 
;  ( 70,  ( ( _,  ( _,  infixr_t1left,  infixr_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (    infixr_hash,      infixr_string)));
 ( lr_table::NONTERM 6, 
 ( result,  infixr_t1left,  infixr_t1right),  rest671);
 } 
;  ( 71,  ( ( _,  ( _,  infix_t1left,  infix_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (     infix_hash,       infix_string)));
 ( lr_table::NONTERM 6,  (
 result,  infix_t1left,  infix_t1right),  rest671);
 } 
;  ( 72,  ( ( _,  ( _,  message_t1left,  message_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (   message_hash,     message_string)));
 ( lr_table::NONTERM 6
,  ( result,  message_t1left,  message_t1right),  rest671);
 } 
;  ( 73,  ( ( _,  ( _,  method_t1left,  method_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (    method_hash,      method_string)));
 ( lr_table::NONTERM 6, 
 ( result,  method_t1left,  method_t1right),  rest671);
 } 
;  ( 74,  ( ( _,  ( _,  nonfix_t1left,  nonfix_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (    nonfix_hash,      nonfix_string)));
 ( lr_table::NONTERM 6, 
 ( result,  nonfix_t1left,  nonfix_t1right),  rest671);
 } 
;  ( 75,  ( ( _,  ( _,  overloaded_t1left,  overloaded_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (overloaded_hash,  overloaded_string)));
 ( 
lr_table::NONTERM 6,  ( result,  overloaded_t1left,  overloaded_t1right),  rest671);
 } 
;  ( 76,  ( ( _,  ( _,  raise_t1left,  raise_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol (     raise_hash,       raise_string)));
 ( lr_table::NONTERM 6,  (
 result,  raise_t1left,  raise_t1right),  rest671);
 } 
;  ( 77,  ( ( _,  ( _,  recursive_t1left,  recursive_t1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE_ID (fn  _ =  (raw_symbol ( recursive_hash,   recursive_string)));
 ( 
lr_table::NONTERM 6,  ( result,  recursive_t1left,  recursive_t1right),  rest671);
 } 
;  ( 78,  ( ( _,  ( values::OPERATORS_ID operators_id1,  operators_id1left,  operators_id1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  {  my  (operators_id as 
operators_id1) = operators_id1 ();
 (operators_id);
 } );
 ( lr_table::NONTERM 8,  ( result,  operators_id1left,  operators_id1right),  rest671);
 } 
;  ( 79,  ( ( _,  ( _,  amper1left,  amper1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (amper_hash,    amper_string)));
 ( lr_table::NONTERM 8,  ( result,  
amper1left,  amper1right),  rest671);
 } 
;  ( 80,  ( ( _,  ( _,  atsign1left,  atsign1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (atsign_hash,   atsign_string)));
 ( lr_table::NONTERM 8,  ( result, 
 atsign1left,  atsign1right),  rest671);
 } 
;  ( 81,  ( ( _,  ( _,  back1left,  back1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (back_hash,     back_string)));
 ( lr_table::NONTERM 8,  ( result,  
back1left,  back1right),  rest671);
 } 
;  ( 82,  ( ( _,  ( _,  bang1left,  bang1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (bang_hash,     bang_string)));
 ( lr_table::NONTERM 8,  ( result,  
bang1left,  bang1right),  rest671);
 } 
;  ( 83,  ( ( _,  ( _,  buck1left,  buck1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (buck_hash,     buck_string)));
 ( lr_table::NONTERM 8,  ( result,  
buck1left,  buck1right),  rest671);
 } 
;  ( 84,  ( ( _,  ( _,  caret1left,  caret1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (caret_hash,    caret_string)));
 ( lr_table::NONTERM 8,  ( result,  
caret1left,  caret1right),  rest671);
 } 
;  ( 85,  ( ( _,  ( _,  dash1left,  dash1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (dash_hash,     dash_string)));
 ( lr_table::NONTERM 8,  ( result,  
dash1left,  dash1right),  rest671);
 } 
;  ( 86,  ( ( _,  ( _,  percnt1left,  percnt1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (percnt_hash,   percnt_string)));
 ( lr_table::NONTERM 8,  ( result, 
 percnt1left,  percnt1right),  rest671);
 } 
;  ( 87,  ( ( _,  ( _,  plus1left,  plus1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (plus_hash,     plus_string)));
 ( lr_table::NONTERM 8,  ( result,  
plus1left,  plus1right),  rest671);
 } 
;  ( 88,  ( ( _,  ( _,  qmark1left,  qmark1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (qmark_hash,    qmark_string)));
 ( lr_table::NONTERM 8,  ( result,  
qmark1left,  qmark1right),  rest671);
 } 
;  ( 89,  ( ( _,  ( _,  slash1left,  slash1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (slash_hash,    slash_string)));
 ( lr_table::NONTERM 8,  ( result,  
slash1left,  slash1right),  rest671);
 } 
;  ( 90,  ( ( _,  ( _,  star1left,  star1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (star_hash,     star_string)));
 ( lr_table::NONTERM 8,  ( result,  
star1left,  star1right),  rest671);
 } 
;  ( 91,  ( ( _,  ( _,  tilda1left,  tilda1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (tilda_hash,    tilda_string)));
 ( lr_table::NONTERM 8,  ( result,  
tilda1left,  tilda1right),  rest671);
 } 
;  ( 92,  ( ( _,  ( _,  langle1left,  langle1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (langle_hash,   langle_string)));
 ( lr_table::NONTERM 8,  ( result, 
 langle1left,  langle1right),  rest671);
 } 
;  ( 93,  ( ( _,  ( _,  rangle1left,  rangle1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (rangle_hash,   rangle_string)));
 ( lr_table::NONTERM 8,  ( result, 
 rangle1left,  rangle1right),  rest671);
 } 
;  ( 94,  ( ( _,  ( _,  eqeq_op1left,  eqeq_op1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (eqeq_hash,     eqeq_string)));
 ( lr_table::NONTERM 8,  ( result, 
 eqeq_op1left,  eqeq_op1right),  rest671);
 } 
;  ( 95,  ( ( _,  ( _,  dash_dash1left,  dash_dash1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (dashdash_hash,  dashdash_string)));
 ( lr_table::NONTERM 8,  (
 result,  dash_dash1left,  dash_dash1right),  rest671);
 } 
;  ( 96,  ( ( _,  ( _,  plus_plus1left,  plus_plus1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (plusplus_hash,  plusplus_string)));
 ( lr_table::NONTERM 8,  (
 result,  plus_plus1left,  plus_plus1right),  rest671);
 } 
;  ( 97,  ( ( _,  ( _,  dotdot1left,  dotdot1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (dotdot_hash,    dotdot_string)));
 ( lr_table::NONTERM 8,  ( result
,  dotdot1left,  dotdot1right),  rest671);
 } 
;  ( 98,  ( ( _,  ( _,  pre_amper1left,  pre_amper1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (preamper_hash,  preamper_string)));
 ( lr_table::NONTERM 8,  (
 result,  pre_amper1left,  pre_amper1right),  rest671);
 } 
;  ( 99,  ( ( _,  ( _,  pre_atsign1left,  pre_atsign1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (preatsign_hash, preatsign_string)));
 ( lr_table::NONTERM 8
,  ( result,  pre_atsign1left,  pre_atsign1right),  rest671);
 } 
;  ( 100,  ( ( _,  ( _,  pre_back1left,  pre_back1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (preback_hash,   preback_string)));
 ( lr_table::NONTERM 8,  ( 
result,  pre_back1left,  pre_back1right),  rest671);
 } 
;  ( 101,  ( ( _,  ( _,  pre_bang1left,  pre_bang1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (prebang_hash,   prebang_string)));
 ( lr_table::NONTERM 8,  ( 
result,  pre_bang1left,  pre_bang1right),  rest671);
 } 
;  ( 102,  ( ( _,  ( _,  pre_buck1left,  pre_buck1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (prebuck_hash,   prebuck_string)));
 ( lr_table::NONTERM 8,  ( 
result,  pre_buck1left,  pre_buck1right),  rest671);
 } 
;  ( 103,  ( ( _,  ( _,  pre_caret1left,  pre_caret1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (precaret_hash,  precaret_string)));
 ( lr_table::NONTERM 8,  
( result,  pre_caret1left,  pre_caret1right),  rest671);
 } 
;  ( 104,  ( ( _,  ( _,  pre_dash1left,  pre_dash1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (predash_hash,   predash_string)));
 ( lr_table::NONTERM 8,  ( 
result,  pre_dash1left,  pre_dash1right),  rest671);
 } 
;  ( 105,  ( ( _,  ( _,  pre_percnt1left,  pre_percnt1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (prepercnt_hash, prepercnt_string)));
 ( lr_table::NONTERM 8
,  ( result,  pre_percnt1left,  pre_percnt1right),  rest671);
 } 
;  ( 106,  ( ( _,  ( _,  pre_plus1left,  pre_plus1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (preplus_hash,   preplus_string)));
 ( lr_table::NONTERM 8,  ( 
result,  pre_plus1left,  pre_plus1right),  rest671);
 } 
;  ( 107,  ( ( _,  ( _,  pre_qmark1left,  pre_qmark1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (preqmark_hash,  preqmark_string)));
 ( lr_table::NONTERM 8,  
( result,  pre_qmark1left,  pre_qmark1right),  rest671);
 } 
;  ( 108,  ( ( _,  ( _,  pre_star1left,  pre_star1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (prestar_hash,   prestar_string)));
 ( lr_table::NONTERM 8,  ( 
result,  pre_star1left,  pre_star1right),  rest671);
 } 
;  ( 109,  ( ( _,  ( _,  pre_tilda1left,  pre_tilda1right)) !  rest671)) => {  my  result = values::QQ_OPERATORS_ID (fn  _ =  (raw_symbol (pretilda_hash,  pretilda_string)));
 ( lr_table::NONTERM 8,  
( result,  pre_tilda1left,  pre_tilda1right),  rest671);
 } 
;  ( 110,  ( ( _,  ( _,  bar1left,  bar1right)) !  rest671)) => {  my  result = values::QQ_BAR (fn  _ =  (raw_symbol (bar_hash,     bar_string)));
 ( lr_table::NONTERM 9,  ( result,  bar1left,  
bar1right),  rest671);
 } 
;  ( 111,  ( ( _,  ( values::QQ_LOWERCASE_PATH lowercase_path1,  lowercase_path1left,  lowercase_path1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE (fn  _ =  {  my  (lowercase_path as 
lowercase_path1) = lowercase_path1 ();
 (fn kind =  lowercase_path kind);
 } );
 ( lr_table::NONTERM 16,  ( result,  lowercase_path1left,  lowercase_path1right),  rest671);
 } 
;  ( 112,  ( ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left,  lowercase_id1right)) !  rest671)) => {  my  result = values::QQ_LOWERCASE (fn  _ =  {  my  (lowercase_id as 
lowercase_id1) = lowercase_id1 ();
 (fn kind =  [kind lowercase_id]);
 } );
 ( lr_table::NONTERM 16,  ( result,  lowercase_id1left,  lowercase_id1right),  rest671);
 } 
;  ( 113,  ( ( _,  ( values::QQ_MIXEDCASE_PATH mixedcase_path1,  mixedcase_path1left,  mixedcase_path1right)) !  rest671)) => {  my  result = values::QQ_MIXEDCASE (fn  _ =  {  my  (mixedcase_path as 
mixedcase_path1) = mixedcase_path1 ();
 (fn kind =  mixedcase_path kind);
 } );
 ( lr_table::NONTERM 17,  ( result,  mixedcase_path1left,  mixedcase_path1right),  rest671);
 } 
;  ( 114,  ( ( _,  ( values::MIXEDCASE_ID mixedcase_id1,  mixedcase_id1left,  mixedcase_id1right)) !  rest671)) => {  my  result = values::QQ_MIXEDCASE (fn  _ =  {  my  (mixedcase_id as mixedcase_id1)
 = mixedcase_id1 ();
 (fn kind =  [kind mixedcase_id]);
 } );
 ( lr_table::NONTERM 17,  ( result,  mixedcase_id1left,  mixedcase_id1right),  rest671);
 } 
;  ( 115,  ( ( _,  ( values::QQ_UPPERCASE_PATH uppercase_path1,  uppercase_path1left,  uppercase_path1right)) !  rest671)) => {  my  result = values::QQ_UPPERCASE (fn  _ =  {  my  (uppercase_path as 
uppercase_path1) = uppercase_path1 ();
 (fn kind =  uppercase_path kind);
 } );
 ( lr_table::NONTERM 18,  ( result,  uppercase_path1left,  uppercase_path1right),  rest671);
 } 
;  ( 116,  ( ( _,  ( values::UPPERCASE_ID uppercase_id1,  uppercase_id1left,  uppercase_id1right)) !  rest671)) => {  my  result = values::QQ_UPPERCASE (fn  _ =  {  my  (uppercase_id as uppercase_id1)
 = uppercase_id1 ();
 (fn kind =  [kind uppercase_id]);
 } );
 ( lr_table::NONTERM 18,  ( result,  uppercase_id1left,  uppercase_id1right),  rest671);
 } 
;  ( 117,  ( ( _,  ( values::QQ_MIXEDCASE mixedcase1,  mixedcase1left,  mixedcase1right)) !  rest671)) => {  my  result = values::QQ_TYP (fn  _ =  {  my  (mixedcase as mixedcase1) = mixedcase1 ();
 (
mixedcase make_type_symbol);
 } );
 ( lr_table::NONTERM 21,  ( result,  mixedcase1left,  mixedcase1right),  rest671);
 } 
;  ( 118,  ( ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left,  lowercase_id1right)) !  rest671)) => {  my  result = values::QQ_SELECTOR (fn  _ =  {  my  (lowercase_id as 
lowercase_id1) = lowercase_id1 ();
 (make_label_symbol lowercase_id);
 } );
 ( lr_table::NONTERM 20,  ( result,  lowercase_id1left,  lowercase_id1right),  rest671);
 } 
;  ( 119,  ( ( _,  ( values::INT int1,  int1left,  int1right)) !  rest671)) => {  my  result = values::QQ_SELECTOR (fn  _ =  {  my  (int as int1) = int1 ();
 (
symbol::make_label_symbol (multiword_int::to_string int));
 } );
 ( lr_table::NONTERM 20,  ( result,  int1left,  int1right),  rest671);
 } 
;  ( 120,  ( ( _,  ( values::QQ_ANYTYPE anytype1,  _,  anytype1right)) !  _ !  ( _,  ( values::QQ_SELECTOR selector1,  selector1left,  _)) !  rest671)) => {  my  result = values::QQ_TYPED_SELECTOR
 (fn  _ =  {  my  (selector as selector1) = selector1 ();
 my  (anytype as anytype1) = anytype1 ();
 (selector, anytype );
 } );
 ( lr_table::NONTERM 22,  ( result,  selector1left,  anytype1right),  
rest671);
 } 
;  ( 121,  ( ( _,  ( values::QQ_SELECTOR selector1,  _,  selector1right)) !  ( _,  ( values::QQ_ANYTYPE anytype1,  anytype1left,  _)) !  rest671)) => {  my  result = values::QQ_TYPED_SELECTOR (fn  _
 =  {  my  (anytype as anytype1) = anytype1 ();
 my  (selector as selector1) = selector1 ();
 (selector, anytype );
 } );
 ( lr_table::NONTERM 22,  ( result,  anytype1left,  selector1right),  rest671)
;
 } 
;  ( 122,  ( ( _,  ( values::QQ_TYPED_SELECTORS typed_selectors1,  _,  typed_selectors1right)) !  _ !  ( _,  ( values::QQ_TYPED_SELECTOR typed_selector1,  typed_selector1left,  _)) !  rest671)) => { 
 my  result = values::QQ_TYPED_SELECTORS (fn  _ =  {  my  (typed_selector as typed_selector1) = typed_selector1 ();
 my  (typed_selectors as typed_selectors1) = typed_selectors1 ();
 (
typed_selector ! typed_selectors);
 } );
 ( lr_table::NONTERM 23,  ( result,  typed_selector1left,  typed_selectors1right),  rest671);
 } 
;  ( 123,  ( ( _,  ( values::QQ_TYPED_SELECTOR typed_selector1,  typed_selector1left,  typed_selector1right)) !  rest671)) => {  my  result = values::QQ_TYPED_SELECTORS (fn  _ =  {  my  (
typed_selector as typed_selector1) = typed_selector1 ();
 ([typed_selector]);
 } );
 ( lr_table::NONTERM 23,  ( result,  typed_selector1left,  typed_selector1right),  rest671);
 } 
;  ( 124,  ( ( _,  ( _,  _,  rbrace1right)) !  ( _,  ( _,  lbrace1left,  _)) !  rest671)) => {  my  result = values::QQ_ANYTYPE' (fn  _ =  (RECORD_TYPE []));
 ( lr_table::NONTERM 24,  ( result,  
lbrace1left,  rbrace1right),  rest671);
 } 
;  ( 125,  ( ( _,  ( _,  _,  rparen1right)) !  ( _,  ( values::QQ_ANYTYPE anytype1,  _,  _)) !  ( _,  ( _,  lparen1left,  _)) !  rest671)) => {  my  result = values::QQ_ANYTYPE' (fn  _ =  {  my  (
anytype as anytype1) = anytype1 ();
 (anytype);
 } );
 ( lr_table::NONTERM 24,  ( result,  lparen1left,  rparen1right),  rest671);
 } 
;  ( 126,  ( ( _,  ( values::TYVAR tyvar1,  (tyvarleft as tyvar1left),  (tyvarright as tyvar1right))) !  rest671)) => {  my  result = values::QQ_ANYTYPE' (fn  _ =  {  my  (tyvar as tyvar1) = tyvar1 ()
;
 (
   SOURCE_CODE_REGION_FOR_TYPE (
                                                TYPE_VARIABLE_TYPE   (TYPE_VARIABLE (make_type_variable_symbol tyvar)),
                                                (tyvarleft, tyvarright)
                                        )   
);
 } );
 ( lr_table::NONTERM 24,  ( result,  tyvar1left,  tyvar1right),  rest671);
 } 
;  ( 127,  ( ( _,  ( _,  _,  (rbraceright as rbrace1right))) !  ( _,  ( values::QQ_TYPED_SELECTORS typed_selectors1,  _,  _)) !  ( _,  ( _,  (lbraceleft as lbrace1left),  _)) !  rest671)) => {  my  
result = values::QQ_ANYTYPE' (fn  _ =  {  my  (typed_selectors as typed_selectors1) = typed_selectors1 ();
 (
    SOURCE_CODE_REGION_FOR_TYPE (
                                                 RECORD_TYPE typed_selectors,
                                                 (lbraceleft, rbraceright)
                                        )    
);
 } );
 ( lr_table::NONTERM 24,  ( result,  lbrace1left,  rbrace1right),  rest671);
 } 
;  ( 128,  ( ( _,  ( _,  _,  rparen1right)) !  ( _,  ( values::QQ_TY0_PC ty0_pc1,  _,  _)) !  _ !  ( _,  ( values::QQ_TYP typ1,  (typleft as typ1left),  typright)) !  rest671)) => {  my  result = 
values::QQ_ANYTYPE' (fn  _ =  {  my  (typ as typ1) = typ1 ();
 my  (ty0_pc as ty0_pc1) = ty0_pc1 ();
 (
    SOURCE_CODE_REGION_FOR_TYPE (
                                                 TYP_TYPE (typ, ty0_pc),
                                                 (typleft, typright)
                                        )    
);
 } );
 ( lr_table::NONTERM 24,  ( result,  typ1left,  rparen1right),  rest671);
 } 
;  ( 129,  ( ( _,  ( values::QQ_ANYTYPE' anytype'1,  _,  anytype'1right)) !  ( _,  ( values::QQ_TYP typ1,  (typleft as typ1left),  typright)) !  rest671)) => {  my  result = values::QQ_ANYTYPE' (fn  _
 =  {  my  (typ as typ1) = typ1 ();
 my  (anytype' as anytype'1) = anytype'1 ();
 (    SOURCE_CODE_REGION_FOR_TYPE (
                                                TYP_TYPE (typ, [anytype']),
                                                (typleft, typright)
                                        )    );
 } );
 ( 
lr_table::NONTERM 24,  ( result,  typ1left,  anytype'1right),  rest671);
 } 
;  ( 130,  ( ( _,  ( values::QQ_TYP typ1,  (typleft as typ1left),  (typright as typ1right))) !  rest671)) => {  my  result = values::QQ_ANYTYPE' (fn  _ =  {  my  (typ as typ1) = typ1 ();
 (
    SOURCE_CODE_REGION_FOR_TYPE (
                                                TYP_TYPE (typ, []),
                                                (typleft, typright)
                                        )    );
 } );
 ( lr_table::NONTERM 24,  ( result,  typ1left,  typ1right),  rest671);
 } 
;  ( 131,  ( ( _,  ( values::QQ_TUPLE_TY tuple_ty1,  _,  tuple_ty1right)) !  _ !  ( _,  ( values::QQ_ANYTYPE anytype1,  anytype1left,  _)) !  rest671)) => {  my  result = values::QQ_TUPLE_TY (fn  _ = 
 {  my  (anytype as anytype1) = anytype1 ();
 my  (tuple_ty as tuple_ty1) = tuple_ty1 ();
 (anytype ! tuple_ty);
 } );
 ( lr_table::NONTERM 25,  ( result,  anytype1left,  tuple_ty1right),  rest671)
;
 } 
;  ( 132,  ( ( _,  ( values::QQ_ANYTYPE anytype2,  _,  anytype2right)) !  _ !  ( _,  ( values::QQ_ANYTYPE anytype1,  anytype1left,  _)) !  rest671)) => {  my  result = values::QQ_TUPLE_TY (fn  _ =  { 
 my  anytype1 = anytype1 ();
 my  anytype2 = anytype2 ();
 ( [ anytype1, anytype2 ] );
 } );
 ( lr_table::NONTERM 25,  ( result,  anytype1left,  anytype2right),  rest671);
 } 
;  ( 133,  ( ( _,  ( _,  _,  rparen1right)) !  ( _,  ( values::QQ_TUPLE_TY tuple_ty1,  _,  _)) !  ( _,  ( _,  lparen1left,  _)) !  rest671)) => {  my  result = values::QQ_ANYTYPE (fn  _ =  {  my  (
tuple_ty as tuple_ty1) = tuple_ty1 ();
 (TUPLE_TYPE tuple_ty);
 } );
 ( lr_table::NONTERM 26,  ( result,  lparen1left,  rparen1right),  rest671);
 } 
;  ( 134,  ( ( _,  ( values::QQ_ANYTYPE anytype2,  _,  anytype2right)) !  _ !  ( _,  ( values::QQ_ANYTYPE anytype1,  anytype1left,  _)) !  rest671)) => {  my  result = values::QQ_ANYTYPE (fn  _ =  { 
 my  anytype1 = anytype1 ();
 my  anytype2 = anytype2 ();
 (TYP_TYPE ( [arrow_typ], [anytype1, anytype2]));
 } );
 ( lr_table::NONTERM 26,  ( result,  anytype1left,  anytype2right),  rest671);
 } 
;  ( 135,  ( ( _,  ( values::QQ_ANYTYPE' anytype'1,  anytype'1left,  anytype'1right)) !  rest671)) => {  my  result = values::QQ_ANYTYPE (fn  _ =  {  my  (anytype' as anytype'1) = anytype'1 ();
 (
anytype');
 } );
 ( lr_table::NONTERM 26,  ( result,  anytype'1left,  anytype'1right),  rest671);
 } 
;  ( 136,  ( ( _,  ( values::QQ_ANYTYPE anytype2,  _,  anytype2right)) !  _ !  ( _,  ( values::QQ_ANYTYPE anytype1,  anytype1left,  _)) !  rest671)) => {  my  result = values::QQ_TY0_PC (fn  _ =  { 
 my  anytype1 = anytype1 ();
 my  anytype2 = anytype2 ();
 ( [anytype1, anytype2] );
 } );
 ( lr_table::NONTERM 27,  ( result,  anytype1left,  anytype2right),  rest671);
 } 
;  ( 137,  ( ( _,  ( values::QQ_TY0_PC ty0_pc1,  _,  ty0_pc1right)) !  _ !  ( _,  ( values::QQ_ANYTYPE anytype1,  anytype1left,  _)) !  rest671)) => {  my  result = values::QQ_TY0_PC (fn  _ =  {  my 
 (anytype as anytype1) = anytype1 ();
 my  (ty0_pc as ty0_pc1) = ty0_pc1 ();
 (  anytype ! ty0_pc    );
 } );
 ( lr_table::NONTERM 27,  ( result,  anytype1left,  ty0_pc1right),  rest671);
 } 
;  ( 138,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  pattern1left,  _)) !  rest671)) => { 
 my  result = values::QQ_EQ_RULE (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 my  (expression as expression1) = expression1 ();
 (
   CASE_RULE {
                                                pattern, 
                                                expression => mark_expression (   expression,
                                                                                  expressionleft,
                                                                                  expressionright
                                                                              )
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 30,  ( result,  pattern1left,  expression1right),  rest671);
 } 
;  ( 139,  ( ( _,  ( _,  _,  semi1right)) !  ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  expressionright)) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  pattern1left,  _)) !  rest671)
) => {  my  result = values::QQ_DARROW_RULE (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 my  (expression as expression1) = expression1 ();
 (
   CASE_RULE {
                                                pattern, 
                                                expression => mark_expression (   expression,
                                                                                  expressionleft,
                                                                                  expressionright
                                                                              )
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 31,  ( result,  pattern1left,  semi1right),  rest671);
 } 
;  ( 140,  ( ( _,  ( values::QQ_DARROW_RULE darrow_rule1,  darrow_rule1left,  darrow_rule1right)) !  rest671)) => {  my  result = values::QQ_DARROW_RULES (fn  _ =  {  my  (darrow_rule as darrow_rule1)
 = darrow_rule1 ();
 ( [darrow_rule] );
 } );
 ( lr_table::NONTERM 29,  ( result,  darrow_rule1left,  darrow_rule1right),  rest671);
 } 
;  ( 141,  ( ( _,  ( values::QQ_DARROW_RULES darrow_rules1,  _,  darrow_rules1right)) !  ( _,  ( values::QQ_DARROW_RULE darrow_rule1,  darrow_rule1left,  _)) !  rest671)) => {  my  result = 
values::QQ_DARROW_RULES (fn  _ =  {  my  (darrow_rule as darrow_rule1) = darrow_rule1 ();
 my  (darrow_rules as darrow_rules1) = darrow_rules1 ();
 (darrow_rule ! darrow_rules);
 } );
 ( 
lr_table::NONTERM 29,  ( result,  darrow_rule1left,  darrow_rules1right),  rest671);
 } 
;  ( 142,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  expression1right)) !  _ !  ( _,  ( values::INT int1,  int1left,  _)) !  rest671)) => {  my  result = values::QQ_RECORD_ELEMENT (fn  _ =  { 
 my  (int as int1) = int1 ();
 my  (expression as expression1) = expression1 ();
 ((symbol::make_label_symbol (multiword_int::to_string int)), expression);
 } );
 ( lr_table::NONTERM 32,  ( result,  
int1left,  expression1right),  rest671);
 } 
;  ( 143,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  expression1right)) !  _ !  ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left,  _)) !  rest671)) => {  my  result = 
values::QQ_RECORD_ELEMENT (fn  _ =  {  my  (lowercase_id as lowercase_id1) = lowercase_id1 ();
 my  (expression as expression1) = expression1 ();
 ((make_label_symbol lowercase_id), expression);
 } )
;
 ( lr_table::NONTERM 32,  ( result,  lowercase_id1left,  expression1right),  rest671);
 } 
;  ( 144,  ( ( _,  ( values::QQ_SELECTOR selector1,  selector1left,  selector1right)) !  rest671)) => {  my  result = values::QQ_RECORD_ELEMENT (fn  _ =  {  my  (selector as selector1) = selector1 ()
;
 (selector, VARIABLE_IN_EXPRESSION [ symbol::make_value_symbol (symbol::name selector) ]);
 } );
 ( lr_table::NONTERM 32,  ( result,  selector1left,  selector1right),  rest671);
 } 
;  ( 145,  ( ( _,  ( values::QQ_RECORD_ELEMENTS record_elements1,  _,  record_elements1right)) !  _ !  ( _,  ( values::QQ_RECORD_ELEMENT record_element1,  record_element1left,  _)) !  rest671)) => { 
 my  result = values::QQ_RECORD_ELEMENTS (fn  _ =  {  my  (record_element as record_element1) = record_element1 ();
 my  (record_elements as record_elements1) = record_elements1 ();
 (
record_element ! record_elements);
 } );
 ( lr_table::NONTERM 33,  ( result,  record_element1left,  record_elements1right),  rest671);
 } 
;  ( 146,  ( ( _,  ( values::QQ_RECORD_ELEMENT record_element1,  record_element1left,  record_element1right)) !  rest671)) => {  my  result = values::QQ_RECORD_ELEMENTS (fn  _ =  {  my  (
record_element as record_element1) = record_element1 ();
 ([record_element]);
 } );
 ( lr_table::NONTERM 33,  ( result,  record_element1left,  record_element1right),  rest671);
 } 
;  ( 147,  ( ( _,  ( values::QQ_EXPRESSIONB expressionb1,  expressionb1left,  expressionb1right)) !  rest671)) => {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  (expressionb as expressionb1) =
 expressionb1 ();
 (expressionb);
 } );
 ( lr_table::NONTERM 36,  ( result,  expressionb1left,  expressionb1right),  rest671);
 } 
;  ( 148,  ( ( _,  ( values::QQ_ANYTYPE anytype1,  _,  anytype1right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  _)) !  rest671)) => {  my  result = values::QQ_EXPRESSION
 (fn  _ =  {  my  (expression as expression1) = expression1 ();
 my  (anytype as anytype1) = anytype1 ();
 (TYPE_CONSTRAINT_EXPRESSION { expression, constraint => anytype } );
 } );
 ( 
lr_table::NONTERM 36,  ( result,  expression1left,  anytype1right),  rest671);
 } 
;  ( 149,  ( ( _,  ( values::QQ_EXPRESSION expression2,  expression2left,  expression2right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  expression1right)) !  rest671)) =>
 {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  expression1 = expression1 ();
 my  expression2 = expression2 ();
 (
OR_EXPRESSION (
                                            mark_expression (expression1, expression1left, expression1right),
                                            mark_expression (expression2, expression2left, expression2right)
                                        ) 
);
 } );
 ( lr_table::NONTERM 36,  ( result,  expression1left,  expression2right),  rest671);
 } 
;  ( 150,  ( ( _,  ( values::QQ_EXPRESSION expression2,  expression2left,  expression2right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  expression1right)) !  rest671)) =>
 {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  expression1 = expression1 ();
 my  expression2 = expression2 ();
 (
AND_EXPRESSION (
                                            mark_expression (expression1, expression1left, expression1right),
                                            mark_expression (expression2, expression2left, expression2right)
                                        ) 
);
 } );
 ( lr_table::NONTERM 36,  ( result,  expression1left,  expression2right),  rest671);
 } 
;  ( 151,  ( ( _,  ( values::QQ_EQ_RULE eq_rule1,  _,  eq_rule1right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  _)) !  rest671)) => {  my  result = values::QQ_EXPRESSION
 (fn  _ =  {  my  (expression as expression1) = expression1 ();
 my  (eq_rule as eq_rule1) = eq_rule1 ();
 (EXCEPT_EXPRESSION { expression, rules =>[eq_rule]});
 } );
 ( lr_table::NONTERM 36,  ( 
result,  expression1left,  eq_rule1right),  rest671);
 } 
;  ( 152,  ( ( _,  ( _,  _,  end_t1right)) !  ( _,  ( values::QQ_DARROW_RULES darrow_rules1,  _,  _)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  _)) !  rest671)) => {  my  
result = values::QQ_EXPRESSION (fn  _ =  {  my  (expression as expression1) = expression1 ();
 my  (darrow_rules as darrow_rules1) = darrow_rules1 ();
 (
EXCEPT_EXPRESSION { expression, rules => darrow_rules });
 } );
 ( lr_table::NONTERM 36,  ( result,  expression1left,  end_t1right),  rest671);
 } 
;  ( 153,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  prefix_exp1left,  _)) !  rest671))
 => {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 my  (expression as expression1) = expression1 ();
 (
   {   IF_EXPRESSION
                                                    { test_case => PRE_FIXITY_EXPRESSION prefix_exp,
                                                      then_case => mark_expression (expression, expressionleft, expressionright),
                                                      else_case => void_expression
                                                    };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 36,  ( result,  prefix_exp1left,  expression1right),  rest671);
 } 
;  ( 154,  ( ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  _,  prefix_exp1right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  (expressionleft as expression1left),  expressionright)) !  rest671))
 => {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  (expression as expression1) = expression1 ();
 my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 (
   {   IF_EXPRESSION
                                                    { test_case => PRE_FIXITY_EXPRESSION prefix_exp,
                                                      then_case => mark_expression (expression, expressionleft, expressionright),
                                                      else_case => void_expression
                                                    };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 36,  ( result,  expression1left,  prefix_exp1right),  rest671);
 } 
;  ( 155,  ( ( _,  ( values::QQ_EQ_RULE eq_rule1,  _,  (eq_ruleright as eq_rule1right))) !  ( _,  ( _,  (fn_tleft as fn_t1left),  _)) !  rest671)) => {  my  result = values::QQ_EXPRESSION (fn  _ =  { 
 my  (eq_rule as eq_rule1) = eq_rule1 ();
 (mark_expression (FN_EXPRESSION [eq_rule], fn_tleft, eq_ruleright));
 } );
 ( lr_table::NONTERM 36,  ( result,  fn_t1left,  eq_rule1right),  rest671);
 } 
;  ( 156,  ( ( _,  ( _,  _,  (end_tright as end_t1right))) !  ( _,  ( values::QQ_BLOCK_DECLARATIONS_AND_EXPRESSIONS block_declarations_and_expressions1,  _,  _)) !  _ !  ( _,  ( values::QQ_APP_EXP 
app_exp1,  (app_expleft as app_exp1left),  _)) !  rest671)) => {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  (app_exp as app_exp1) = app_exp1 ();
 my  (block_declarations_and_expressions as 
block_declarations_and_expressions1) = block_declarations_and_expressions1 ();
 (
   # Convert the 'where' expression to a block,
                                            # and thence to a LET_EXPRESSION:
                                            {
                                                app_exp_as_expression
                                                    =
                                                    PRE_FIXITY_EXPRESSION ( app_exp );

                                                expression_as_declaration
                                                    =
                                                    mark_declaration (
                                                        VALUE_DECLARATIONS (
                                                            [   NAMED_VALUE {
                                                                    expression => app_exp_as_expression,
                                                                    pattern    => WILDCARD_PATTERN,
                                                                    is_lazy    => FALSE
                                                                }
                                                            ],
                                                            NIL
                                                        ),
                                                        app_expleft,
                                                        end_tright
                                                    );

                                                declaration_list
                                                    = 
                                                    expression_as_declaration 
                                                    !
                                                    block_declarations_and_expressions;

                                                raw_syntax_junk::block_to_let  declaration_list;        # NB: List is in reverse order.
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 36,  ( result,  app_exp1left,  end_t1right),  rest671);
 } 
;  ( 157,  ( ( _,  ( values::QQ_EXPRESSION expression2,  expression2left,  expression2right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  expression1right)) !  _ !  ( _,  ( _
,  for_t1left,  _)) !  rest671)) => {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  (expression as expression1) = expression1 ();
 my  expression2 = expression2 ();
 (
WHILE_EXPRESSION
                                            {   test       => mark_expression (expression1, expression1left, expression1right),
                                                expression => mark_expression (expression2, expression2left, expression2right)
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 36,  ( result,  for_t1left,  expression2right),  rest671);
 } 
;  ( 158,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  (expressionright as expression1right))) !  _ !  _ !  ( _,  ( _,  for_t1left,  _)) !  rest671)) => {  my  result = 
values::QQ_EXPRESSION (fn  _ =  {  my  (expression as expression1) = expression1 ();
 (
WHILE_EXPRESSION
                                            {   test       => VARIABLE_IN_EXPRESSION [ fast_symbol::make_value_symbol' "TRUE" ],
                                                expression => mark_expression (expression, expressionleft, expressionright)
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 36,  ( result,  for_t1left,  expression1right),  rest671);
 } 
;  ( 159,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  (expressionright as expression1right))) !  _ !  _ !  _ !  _ !  ( _,  ( _,  for_t1left,  _)) !  rest671)) => {  my  result = 
values::QQ_EXPRESSION (fn  _ =  {  my  (expression as expression1) = expression1 ();
 (
WHILE_EXPRESSION
                                            {   test       => VARIABLE_IN_EXPRESSION [ fast_symbol::make_value_symbol' "TRUE" ],
                                                expression => mark_expression (expression, expressionleft, expressionright)
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 36,  ( result,  for_t1left,  expression1right),  rest671);
 } 
;  ( 160,  ( ( _,  ( values::QQ_EXPRESSION expression2,  expression2left,  expression2right)) !  ( _,  ( _,  rparenleft,  _)) !  ( _,  ( values::QQ_LOOP_DECLARATIONS loop_declarations1,  _,  _)) !  _
 !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  expression1right)) !  ( _,  ( _,  _,  semi1right)) !  ( _,  ( values::QQ_INIT_EXPRESSIONS init_expressions1,  _,  _)) !  _ !  ( _,  (
 _,  (for_tleft as for_t1left),  for_tright)) !  rest671)) => {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  (init_expressions as init_expressions1) = init_expressions1 ();
 my  expression1 = 
expression1 ();
 my  (loop_declarations as loop_declarations1) = loop_declarations1 ();
 my  expression2 = expression2 ();
 (
make_raw_syntax::for_loop
                                             ( (for_tleft,       for_tright),
                                               init_expressions,
                                               (expression1,     expression1left,  expression1right),
                                               loop_declarations,
                                               (void_expression, semi1right,       rparenleft),
                                               (expression2,     expression2left,  expression2right)
                                        )    
);
 } );
 ( lr_table::NONTERM 36,  ( result,  for_t1left,  expression2right),  rest671);
 } 
;  ( 161,  ( ( _,  ( values::QQ_EXPRESSION expression3,  expression3left,  expression3right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression2,  expression2left,  expression2right)) !  _ !  ( _,  ( 
values::QQ_LOOP_DECLARATIONS loop_declarations1,  _,  _)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  expression1right)) !  _ !  ( _,  ( values::QQ_INIT_EXPRESSIONS 
init_expressions1,  _,  _)) !  _ !  ( _,  ( _,  (for_tleft as for_t1left),  for_tright)) !  rest671)) => {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  (init_expressions as init_expressions1)
 = init_expressions1 ();
 my  expression1 = expression1 ();
 my  (loop_declarations as loop_declarations1) = loop_declarations1 ();
 my  expression2 = expression2 ();
 my  expression3 = expression3 ()
;
 (
make_raw_syntax::for_loop
                                             ( (for_tleft,       for_tright),
                                               init_expressions,
                                               (expression1,     expression1left,  expression1right),
                                               loop_declarations,
                                               (expression2,     expression2left,  expression2right),
                                               (expression3,     expression3left,  expression3right)
                                        )    
);
 } );
 ( lr_table::NONTERM 36,  ( result,  for_t1left,  expression3right),  rest671);
 } 
;  ( 162,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  (expressionright as expression1right))) !  _ !  ( _,  ( _,  (raise_tleft as raise_t1left),  _)) !  rest671)) => {  my  result
 = values::QQ_EXPRESSION (fn  _ =  {  my  (expression as expression1) = expression1 ();
 (
mark_expression (
                                            mark_expression (RAISE_EXPRESSION expression, expressionleft, expressionright),
                                            raise_tleft, expressionright
                                        ) );
 } );
 ( lr_table::NONTERM 36,  ( 
result,  raise_t1left,  expression1right),  rest671);
 } 
;  ( 163,  ( ( _,  ( _,  _,  slash2right)) !  ( _,  ( values::QQ_REGULAR_EXPRESSIONS regular_expressions1,  _,  regular_expressionsright)) !  _ !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  (
expressionleft as expression1left),  expressionright)) !  rest671)) => {  my  result = values::QQ_EXPRESSION (fn  _ =  {  my  (expression as expression1) = expression1 ();
 my  (regular_expressions
 as regular_expressions1) = regular_expressions1 ();
 (
    regex_to_raw_syntax (
                                                 expression,
                                                 regular_expressions,
                                                 expressionleft,
                                                 expressionright,
                                                 regular_expressionsright
                                             )
                                        
);
 } );
 ( lr_table::NONTERM 36,  ( result,  expression1left,  slash2right),  rest671);
 } 
;  ( 164,  ( ( _,  ( values::QQ_INIT_EXPRESSIONS init_expressions1,  _,  init_expressions1right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  expressionright)) !  _ !  ( _,  (
 values::QQ_LOWERCASE_ID lowercase_id1,  (lowercase_idleft as lowercase_id1left),  lowercase_idright)) !  rest671)) => {  my  result = values::QQ_INIT_EXPRESSIONS (fn  _ =  {  my  (lowercase_id as 
lowercase_id1) = lowercase_id1 ();
 my  (expression as expression1) = expression1 ();
 my  (init_expressions as init_expressions1) = init_expressions1 ();
 (
  ( (lowercase_id, lowercase_idleft, lowercase_idright),
                                                     (expression,   expressionleft,   expressionright)
                                                   )
                                                   !
                                                   init_expressions
                                                
);
 } );
 ( lr_table::NONTERM 34,  ( result,  lowercase_id1left,  init_expressions1right),  rest671);
 } 
;  ( 165,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  (lowercase_idleft as 
lowercase_id1left),  lowercase_idright)) !  rest671)) => {  my  result = values::QQ_INIT_EXPRESSIONS (fn  _ =  {  my  (lowercase_id as lowercase_id1) = lowercase_id1 ();
 my  (expression as 
expression1) = expression1 ();
 (
 [ ( (lowercase_id, lowercase_idleft, lowercase_idright),
                                                      (expression,   expressionleft,   expressionright)
                                                    )
                                                  ]
                                                
);
 } );
 ( lr_table::NONTERM 34,  ( result,  lowercase_id1left,  expression1right),  rest671);
 } 
;  ( 166,  ( rest671)) => {  my  result = values::QQ_LOOP_DECLARATIONS (fn  _ =  ([]));
 ( lr_table::NONTERM 35,  ( result,  default_position,  default_position),  rest671);
 } 
;  ( 167,  ( ( _,  ( values::QQ_DECLARATION declaration1,  (declarationleft as declaration1left),  (declarationright as declaration1right))) !  rest671)) => {  my  result = 
values::QQ_LOOP_DECLARATIONS (fn  _ =  {  my  (declaration as declaration1) = declaration1 ();
 ( [ (declaration, declarationleft, declarationright) ] );
 } );
 ( lr_table::NONTERM 35,  ( result,  
declaration1left,  declaration1right),  rest671);
 } 
;  ( 168,  ( ( _,  ( values::QQ_LOOP_DECLARATIONS loop_declarations1,  _,  loop_declarations1right)) !  _ !  ( _,  ( values::QQ_DECLARATION declaration1,  (declarationleft as declaration1left),  
declarationright)) !  rest671)) => {  my  result = values::QQ_LOOP_DECLARATIONS (fn  _ =  {  my  (declaration as declaration1) = declaration1 ();
 my  (loop_declarations as loop_declarations1) = 
loop_declarations1 ();
 (
   (declaration, declarationleft, declarationright)
                                                    !
                                                    loop_declarations
                                                
);
 } );
 ( lr_table::NONTERM 35,  ( result,  declaration1left,  loop_declarations1right),  rest671);
 } 
;  ( 169,  ( ( _,  ( values::QQ_EXPRESSIONC expressionc1,  expressionc1left,  expressionc1right)) !  rest671)) => {  my  result = values::QQ_EXPRESSIONB (fn  _ =  {  my  (expressionc as expressionc1)
 = expressionc1 ();
 (expressionc);
 } );
 ( lr_table::NONTERM 37,  ( result,  expressionc1left,  expressionc1right),  rest671);
 } 
;  ( 170,  ( ( _,  ( values::QQ_EXPRESSIONC expressionc3,  expressionc3left,  expressionc3right)) !  _ !  ( _,  ( values::QQ_EXPRESSIONC expressionc2,  expressionc2left,  expressionc2right)) !  _ !  (
 _,  ( values::QQ_EXPRESSIONC expressionc1,  expressionc1left,  _)) !  rest671)) => {  my  result = values::QQ_EXPRESSIONB (fn  _ =  {  my  expressionc1 = expressionc1 ();
 my  expressionc2 = 
expressionc2 ();
 my  expressionc3 = expressionc3 ();
 (
  {   IF_EXPRESSION
                                                    { test_case => expressionc1,
                                                      then_case => mark_expression (expressionc2, expressionc2left, expressionc2right),
                                                      else_case => mark_expression (expressionc3, expressionc3left, expressionc3right)
                                                    };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 37,  ( result,  expressionc1left,  expressionc3right),  rest671);
 } 
;  ( 171,  ( ( _,  ( values::QQ_APP_EXP app_exp1,  app_exp1left,  app_exp1right)) !  rest671)) => {  my  result = values::QQ_EXPRESSIONC (fn  _ =  {  my  (app_exp as app_exp1) = app_exp1 ();
 (
PRE_FIXITY_EXPRESSION app_exp);
 } );
 ( lr_table::NONTERM 38,  ( result,  app_exp1left,  app_exp1right),  rest671);
 } 
;  ( 172,  ( ( _,  ( values::QQ_POSTFIX_EXP postfix_exp1,  postfix_exp1left,  postfix_exp1right)) !  rest671)) => {  my  result = values::QQ_APP_EXP (fn  _ =  {  my  (postfix_exp as postfix_exp1) = 
postfix_exp1 ();
 (postfix_exp);
 } );
 ( lr_table::NONTERM 45,  ( result,  postfix_exp1left,  postfix_exp1right),  rest671);
 } 
;  ( 173,  ( ( _,  ( values::QQ_APP_EXP app_exp1,  _,  app_exp1right)) !  ( _,  ( values::QQ_POSTFIX_EXP postfix_exp1,  postfix_exp1left,  _)) !  rest671)) => {  my  result = values::QQ_APP_EXP (fn  _
 =  {  my  (postfix_exp as postfix_exp1) = postfix_exp1 ();
 my  (app_exp as app_exp1) = app_exp1 ();
 (postfix_exp @ app_exp);
 } );
 ( lr_table::NONTERM 45,  ( result,  postfix_exp1left,  
app_exp1right),  rest671);
 } 
;  ( 174,  ( ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  prefix_exp1left,  prefix_exp1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = 
prefix_exp1 ();
 (prefix_exp);
 } );
 ( lr_table::NONTERM 47,  ( result,  prefix_exp1left,  prefix_exp1right),  rest671);
 } 
;  ( 175,  ( ( _,  ( values::QQ_POSTFIX_OP postfix_op1,  postfix_opleft,  (postfix_opright as postfix_op1right))) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  (prefix_expleft as prefix_exp1left),  _
)) !  rest671)) => {  my  result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 my  (postfix_op as postfix_op1) = postfix_op1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  postfix_op;

                                               postfix_op_item
                                                   =
                                                   { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], postfix_opleft, postfix_opright),
                                                     source_code_region => (postfix_opleft, postfix_opright),
                                                     fixity             => THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( postfix_op_item ! prefix_exp );

                                                [   { item               => mark_expression (expression, prefix_expleft, postfix_opright),
                                                      source_code_region => (prefix_expleft, postfix_opright),
                                                      fixity             => NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  prefix_exp1left,  postfix_op1right),  rest671);
 } 
;  ( 176,  ( ( _,  ( _,  _,  (post_slashright as post_slash1right))) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  (pre_slashleft as pre_slash1left),  _)) !  rest671)) => { 
 my  result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  (make_raw_symbol "/_/");

                                               slashens_op_item
                                                   =
                                                   { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], pre_slashleft, post_slashright),
                                                     source_code_region => (pre_slashleft, post_slashright),
                                                     fixity              => THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( slashens_op_item ! prefix_exp );

                                                [   { item               => mark_expression (expression, pre_slashleft, post_slashright),
                                                      source_code_region => (pre_slashleft, post_slashright),
                                                      fixity             => NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  pre_slash1left,  post_slash1right),  rest671);
 } 
;  ( 177,  ( ( _,  ( _,  _,  (post_barright as post_bar1right))) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  (pre_barleft as pre_bar1left),  _)) !  rest671)) => {  my  result
 = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  (make_raw_symbol "|_|");

                                               barens_op_item
                                                   =
                                                   { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], pre_barleft, post_barright),
                                                     source_code_region => (pre_barleft, post_barright),
                                                     fixity             => THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( barens_op_item ! prefix_exp );

                                                [   { item               => mark_expression (expression, pre_barleft, post_barright),
                                                      source_code_region => (pre_barleft, post_barright),
                                                      fixity             => NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  pre_bar1left,  post_bar1right),  rest671);
 } 
;  ( 178,  ( ( _,  ( _,  _,  (post_rangleright as post_rangle1right))) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  (pre_langleleft as pre_langle1left),  _)) !  rest671)) =>
 {  my  result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  (make_raw_symbol "<_>");

                                               anglens_op_item
                                                   =
                                                   { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], pre_langleleft, post_rangleright),
                                                     source_code_region => (pre_langleleft, post_rangleright),
                                                     fixity             => THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( anglens_op_item ! prefix_exp );

                                                [   { item               => mark_expression (expression, pre_langleleft, post_rangleright),
                                                      source_code_region => (pre_langleleft, post_rangleright),
                                                      fixity             => NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  pre_langle1left,  post_rangle1right),  rest671);
 } 
;  ( 179,  ( ( _,  ( _,  _,  (post_barright as post_bar1right))) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  (pre_langleleft as pre_langle1left),  _)) !  rest671)) => {  my  
result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  (make_raw_symbol "<_|");

                                               angbar_op_item
                                                   =
                                                   { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], pre_langleleft, post_barright),
                                                     source_code_region => (pre_langleleft, post_barright),
                                                     fixity             => THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( angbar_op_item ! prefix_exp );

                                                [   { item               => mark_expression (expression, pre_langleleft, post_barright),
                                                      source_code_region => (pre_langleleft, post_barright),
                                                      fixity             => NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  pre_langle1left,  post_bar1right),  rest671);
 } 
;  ( 180,  ( ( _,  ( _,  _,  (post_rangleright as post_rangle1right))) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  (pre_barleft as pre_bar1left),  _)) !  rest671)) => {  my  
result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  (make_raw_symbol "|_>");

                                               barang_op_item
                                                   =
                                                   { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], pre_barleft, post_rangleright),
                                                     source_code_region => (pre_barleft, post_rangleright),
                                                     fixity             => THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( barang_op_item ! prefix_exp );

                                                [   { item               => mark_expression (expression, pre_barleft, post_rangleright),
                                                      source_code_region => (pre_barleft, post_rangleright),
                                                      fixity             => NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  pre_bar1left,  post_rangle1right),  rest671);
 } 
;  ( 181,  ( ( _,  ( _,  _,  (post_rbraceright as post_rbrace1right))) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  (pre_lbraceleft as pre_lbrace1left),  _)) !  rest671)) =>
 {  my  result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  (make_raw_symbol "{_}");

                                               bracens_op_item
                                                   =
                                                   { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], pre_lbraceleft, post_rbraceright),
                                                     source_code_region => (pre_lbraceleft, post_rbraceright),
                                                     fixity             => THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( bracens_op_item ! prefix_exp );

                                                [   { item               => mark_expression (expression, pre_lbraceleft, post_rbraceright),
                                                      source_code_region => (pre_lbraceleft, post_rbraceright),
                                                      fixity             => NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  pre_lbrace1left,  post_rbrace1right),  rest671);
 } 
;  ( 182,  ( ( _,  ( _,  _,  (rbracketright as rbracket1right))) !  ( _,  ( values::QQ_APP_EXP app_exp1,  _,  _)) !  ( _,  ( _,  post_lbracketleft,  _)) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1, 
 (prefix_expleft as prefix_exp1left),  _)) !  rest671)) => {  my  result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 my  (app_exp as app_exp1) = app_exp1
 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  (make_raw_symbol "_[]");

                                               expressions
                                                   =
                                                   [ PRE_FIXITY_EXPRESSION  prefix_exp,
                                                     PRE_FIXITY_EXPRESSION  app_exp
                                                   ];

                                               atomic_exp
                                                   =
                                                   TUPLE_EXPRESSION  expressions;

                                               dot_exp
                                                   =
                                                   [   {   item               =>  mark_expression (atomic_exp, prefix_expleft, rbracketright),
                                                           source_code_region =>  (prefix_expleft, rbracketright),
                                                           fixity             =>  NULL
                                                       }
                                                   ];

                                               sub_op_item
                                                   =
                                                   { item               =>  mark_expression (VARIABLE_IN_EXPRESSION [v], post_lbracketleft, rbracketright),
                                                     source_code_region =>  (post_lbracketleft, rbracketright),
                                                     fixity             =>  THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( sub_op_item ! dot_exp );

                                                [   { item               =>  mark_expression (expression, prefix_expleft, rbracketright),
                                                      source_code_region =>  (prefix_expleft, rbracketright),
                                                      fixity             =>  NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  prefix_exp1left,  rbracket1right),  rest671);
 } 
;  ( 183,  ( ( _,  ( _,  _,  (rbracketright as rbracket1right))) !  ( _,  ( values::QQ_EXPRESSIONS_2_N expressions_2_n1,  _,  _)) !  ( _,  ( _,  post_lbracketleft,  _)) !  ( _,  ( 
values::QQ_PREFIX_EXP prefix_exp1,  (prefix_expleft as prefix_exp1left),  _)) !  rest671)) => {  my  result = values::QQ_POSTFIX_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 my 
 (expressions_2_n as expressions_2_n1) = expressions_2_n1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  (make_raw_symbol "_[]");

                                               indices
                                                   =
                                                   [   {   item               =>  mark_expression ((TUPLE_EXPRESSION expressions_2_n), post_lbracketleft, rbracketright),
                                                           source_code_region =>  (post_lbracketleft, rbracketright),
                                                           fixity             =>  NULL
                                                       }
                                                   ];

                                               expressions
                                                   =
                                                   [ PRE_FIXITY_EXPRESSION  prefix_exp,
                                                     PRE_FIXITY_EXPRESSION  indices
                                                   ];

                                               atomic_exp
                                                   =
                                                   TUPLE_EXPRESSION  expressions;

                                               dot_exp
                                                   =
                                                   [   {   item               =>  mark_expression (atomic_exp, prefix_expleft, rbracketright),
                                                           source_code_region =>  (prefix_expleft, rbracketright),
                                                           fixity             =>  NULL
                                                       }
                                                   ];

                                               sub_op_item
                                                   =
                                                   { item               =>  mark_expression (VARIABLE_IN_EXPRESSION [v], post_lbracketleft, rbracketright),
                                                     source_code_region =>  (post_lbracketleft, rbracketright),
                                                     fixity             =>  THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( sub_op_item ! dot_exp );

                                                [   { item               =>  mark_expression (expression, prefix_expleft, rbracketright),
                                                      source_code_region =>  (prefix_expleft, rbracketright),
                                                      fixity             =>  NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 47,  ( result,  prefix_exp1left,  rbracket1right),  rest671);
 } 
;  ( 184,  ( ( _,  ( values::QQ_DOT_EXP dot_exp1,  dot_exp1left,  dot_exp1right)) !  rest671)) => {  my  result = values::QQ_PREFIX_EXP (fn  _ =  {  my  (dot_exp as dot_exp1) = dot_exp1 ();
 (dot_exp)
;
 } );
 ( lr_table::NONTERM 46,  ( result,  dot_exp1left,  dot_exp1right),  rest671);
 } 
;  ( 185,  ( ( _,  ( values::STRING string1,  stringleft,  (stringright as string1right))) !  ( _,  ( _,  (printf_tleft as printf_t1left),  _)) !  rest671)) => {  my  result = values::QQ_PREFIX_EXP
 (fn  _ =  {  my  (string as string1) = string1 ();
 (
printf_format_string_to_raw_syntax::make_anonymous_curried_function
                                            ( NULL,             # Only fprintf has an fd arg.
                                              string,           # "%d %6.2f %-15s\n" or such.
                                              error,
                                              printf_tleft,
                                              stringleft,
                                              stringright,
                                              printf_format_string_to_raw_syntax::PRINTF
                                            )
                                        
);
 } );
 ( lr_table::NONTERM 46,  ( result,  printf_t1left,  string1right),  rest671);
 } 
;  ( 186,  ( ( _,  ( values::STRING string1,  stringleft,  (stringright as string1right))) !  ( _,  ( _,  (sprintf_tleft as sprintf_t1left),  _)) !  rest671)) => {  my  result = values::QQ_PREFIX_EXP
 (fn  _ =  {  my  (string as string1) = string1 ();
 (
printf_format_string_to_raw_syntax::make_anonymous_curried_function
                                            ( NULL,             # Only fprintf has an fd arg.
                                              string,           # "%d %6.2f %-15s\n" or such.
                                              error,
                                              sprintf_tleft,
                                              stringleft,
                                              stringright,
                                              printf_format_string_to_raw_syntax::SPRINTF
                                            )
                                        
);
 } );
 ( lr_table::NONTERM 46,  ( result,  sprintf_t1left,  string1right),  rest671);
 } 
;  ( 187,  ( ( _,  ( values::STRING string1,  stringleft,  (stringright as string1right))) !  ( _,  ( values::QQ_DOT_EXP dot_exp1,  _,  _)) !  ( _,  ( _,  (fprintf_tleft as fprintf_t1left),  _)) !  
rest671)) => {  my  result = values::QQ_PREFIX_EXP (fn  _ =  {  my  (dot_exp as dot_exp1) = dot_exp1 ();
 my  (string as string1) = string1 ();
 (
printf_format_string_to_raw_syntax::make_anonymous_curried_function
                                            ( THE dot_exp,      # Only fprintf has an fd arg.
                                              string,           # "%d %6.2f %-15s\n" or such.
                                              error,
                                              fprintf_tleft,
                                              stringleft,
                                              stringright,
                                              printf_format_string_to_raw_syntax::FPRINTF
                                            )
                                        
);
 } );
 ( lr_table::NONTERM 46,  ( result,  fprintf_t1left,  string1right),  rest671);
 } 
;  ( 188,  ( ( _,  ( values::QQ_DOT_EXP dot_exp1,  _,  (dot_expright as dot_exp1right))) !  ( _,  ( values::QQ_PREFIX_OP prefix_op1,  (prefix_opleft as prefix_op1left),  prefix_opright)) !  rest671))
 => {  my  result = values::QQ_PREFIX_EXP (fn  _ =  {  my  (prefix_op as prefix_op1) = prefix_op1 ();
 my  (dot_exp as dot_exp1) = dot_exp1 ();
 (
   {   my (v, f)
                                                   =
                                                   make_value_and_fixity_symbols  prefix_op;

                                               prefix_op_item
                                                   =
                                                   { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], prefix_opleft, prefix_opright),
                                                     source_code_region => (prefix_opleft, prefix_opright),
                                                     fixity             => THE f
                                                   };

                                               expression
                                                   =
                                                   PRE_FIXITY_EXPRESSION ( prefix_op_item ! dot_exp );

                                                [   { item               => mark_expression (expression, prefix_opleft, dot_expright),
                                                      source_code_region => (prefix_opleft, dot_expright),
                                                      fixity             => NULL
                                                    }
                                                ];
                                           }
                                       
);
 } );
 ( lr_table::NONTERM 46,  ( result,  prefix_op1left,  dot_exp1right),  rest671);
 } 
;  ( 189,  ( ( _,  ( values::QQ_NONPREFIX_VALUE_OR_BAR nonprefix_value_or_bar1,  (nonprefix_value_or_barleft as nonprefix_value_or_bar1left),  (nonprefix_value_or_barright as 
nonprefix_value_or_bar1right))) !  rest671)) => {  my  result = values::QQ_DOT_EXP (fn  _ =  {  my  (nonprefix_value_or_bar as nonprefix_value_or_bar1) = nonprefix_value_or_bar1 ();
 (
   [   {   my (v, f)
                                                        =
                                                        make_value_and_fixity_symbols  nonprefix_value_or_bar;

                                                    {   item               => mark_expression (VARIABLE_IN_EXPRESSION [v], nonprefix_value_or_barleft, nonprefix_value_or_barright),
                                                        source_code_region => (nonprefix_value_or_barleft, nonprefix_value_or_barright),
                                                        fixity             => THE f
                                                    };
                                                }
                                            ]
                                        
);
 } );
 ( lr_table::NONTERM 48,  ( result,  nonprefix_value_or_bar1left,  nonprefix_value_or_bar1right),  rest671);
 } 
;  ( 190,  ( ( _,  ( values::IMPLICIT_THUNK_PARAMETER implicit_thunk_parameter1,  (implicit_thunk_parameterleft as implicit_thunk_parameter1left),  (implicit_thunk_parameterright as 
implicit_thunk_parameter1right))) !  rest671)) => {  my  result = values::QQ_DOT_EXP (fn  _ =  {  my  (implicit_thunk_parameter as implicit_thunk_parameter1) = implicit_thunk_parameter1 ();
 (
   [   {   my (v, f)
                                                        =
                                                        make_value_and_fixity_symbols  implicit_thunk_parameter;

                                                    {   item               => mark_expression (IMPLICIT_THUNK_PARAMETER [v], implicit_thunk_parameterleft, implicit_thunk_parameterright),
                                                        source_code_region => (implicit_thunk_parameterleft, implicit_thunk_parameterright),
                                                        fixity             => THE f
                                                    };
                                                }
                                            ]
                                        
);
 } );
 ( lr_table::NONTERM 48,  ( result,  implicit_thunk_parameter1left,  implicit_thunk_parameter1right),  rest671);
 } 
;  ( 191,  ( ( _,  ( values::PASSIVEOP_ID passiveop_id1,  (passiveop_idleft as passiveop_id1left),  (passiveop_idright as passiveop_id1right))) !  rest671)) => {  my  result = values::QQ_DOT_EXP (fn 
 _ =  {  my  (passiveop_id as passiveop_id1) = passiveop_id1 ();
 (
   [   {   {   item               => mark_expression (VARIABLE_IN_EXPRESSION [make_value_symbol passiveop_id], passiveop_idleft, passiveop_idright),
                                                        source_code_region => (passiveop_idleft, passiveop_idright),
                                                        fixity             => NULL
                                                    };
                                                }
                                            ]
                                        
);
 } );
 ( lr_table::NONTERM 48,  ( result,  passiveop_id1left,  passiveop_id1right),  rest671);
 } 
;  ( 192,  ( ( _,  ( values::QQ_ATOMIC_EXP atomic_exp1,  (atomic_expleft as atomic_exp1left),  (atomic_expright as atomic_exp1right))) !  rest671)) => {  my  result = values::QQ_DOT_EXP (fn  _ =  { 
 my  (atomic_exp as atomic_exp1) = atomic_exp1 ();
 (
   [   {   item               => mark_expression (atomic_exp, atomic_expleft, atomic_expright),
                                                    source_code_region => (atomic_expleft, atomic_expright),
                                                    fixity             => NULL
                                                }
                                            ]
                                        
);
 } );
 ( lr_table::NONTERM 48,  ( result,  atomic_exp1left,  atomic_exp1right),  rest671);
 } 
;  ( 193,  ( ( _,  ( values::QQ_SELECTOR selector1,  selectorleft,  (selectorright as selector1right))) !  _ !  ( _,  ( values::QQ_DOT_EXP dot_exp1,  (dot_expleft as dot_exp1left),  _)) !  rest671))
 => {  my  result = values::QQ_DOT_EXP (fn  _ =  {  my  (dot_exp as dot_exp1) = dot_exp1 ();
 my  (selector as selector1) = selector1 ();
 (
  # We want 'a.b' to be exactly the same as '.b a'
                                           # so here we just build the value that the latter
                                           # would have produced:

                                           {    selector_exp
                                                    =
                                                    (mark_expression (RECORD_SELECTOR_EXPRESSION selector, selectorleft, selectorright));

                                                selector_exp'
                                                    = 
                                                    [   {   item               => selector_exp,
                                                            source_code_region => (selectorleft, selectorright),
                                                            fixity             => NULL
                                                        }
                                                    ];

                                                app_exp
                                                   =
                                                   selector_exp' @ dot_exp;

                                                expression
                                                   =   
                                                   PRE_FIXITY_EXPRESSION app_exp;

                                                [   {   item               => mark_expression (expression, dot_expleft, selectorright),
                                                        source_code_region => (dot_expleft, selectorright),
                                                        fixity             => NULL
                                                    }
                                                ];
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 48,  ( result,  dot_exp1left,  selector1right),  rest671);
 } 
;  ( 194,  ( ( _,  ( values::QQ_SELECTOR selector1,  _,  (selectorright as selector1right))) !  _ !  ( _,  ( values::QQ_DOT_EXP dot_exp1,  (dot_expleft as dot_exp1left),  _)) !  rest671)) => {  my  
result = values::QQ_DOT_EXP (fn  _ =  {  my  (dot_exp as dot_exp1) = dot_exp1 ();
 my  (selector as selector1) = selector1 ();
 (
  # We defer until  src/lib/compiler/front/typer/main/oop-rewrite-declaration.pkg
                                           # the expansion of this oop code into vanilla code:
                                           #
                                           {   expression
                                                   =
                                                    OBJECT_FIELD_EXPRESSION
                                                     { object =>  PRE_FIXITY_EXPRESSION dot_exp,
                                                       field  =>  selector
                                                     };

                                                [   {   item               => mark_expression (expression, dot_expleft, selectorright),
                                                        source_code_region => (dot_expleft, selectorright),
                                                        fixity             => NULL
                                                    }
                                                ];
                                           }
                                        
);
 } );
 ( lr_table::NONTERM 48,  ( result,  dot_exp1left,  selector1right),  rest671);
 } 
;  ( 195,  ( ( _,  ( values::QQ_LIST_COMPREHENSION_CLAUSES list_comprehension_clauses1,  _,  list_comprehension_clauses1right)) !  ( _,  ( values::QQ_LIST_COMPREHENSION_FOR_CLAUSE 
list_comprehension_for_clause1,  _,  _)) !  ( _,  ( values::QQ_LIST_COMPREHENSION_RESULT_CLAUSE list_comprehension_result_clause1,  list_comprehension_result_clause1left,  _)) !  rest671)) => {  my  
result = values::QQ_LIST_COMPREHENSION (fn  _ =  {  my  (list_comprehension_result_clause as list_comprehension_result_clause1) = list_comprehension_result_clause1 ();
 my  (
list_comprehension_for_clause as list_comprehension_for_clause1) = list_comprehension_for_clause1 ();
 my  (list_comprehension_clauses as list_comprehension_clauses1) = list_comprehension_clauses1 ()
;
 (
 elc::expand_list_comprehension_syntax
                                            (
                                              ( list_comprehension_for_clause
                                              ! list_comprehension_clauses
                                              )
                                              @
                                              [ list_comprehension_result_clause ]
                                            )
                                        
);
 } );
 ( lr_table::NONTERM 50,  ( result,  list_comprehension_result_clause1left,  list_comprehension_clauses1right),  rest671);
 } 
;  ( 196,  ( ( _,  ( values::QQ_EXPRESSIONB expressionb1,  (expressionbleft as expressionb1left),  (expressionbright as expressionb1right))) !  rest671)) => {  my  result = 
values::QQ_LIST_COMPREHENSION_RESULT_CLAUSE (fn  _ =  {  my  (expressionb as expressionb1) = expressionb1 ();
 (
 elc::LIST_COMPREHENSION_RESULT_CLAUSE (SOURCE_CODE_REGION_FOR_EXPRESSION (expressionb, (expressionbleft, expressionbright )) ));
 } );
 ( lr_table::NONTERM 51,  ( result,  expressionb1left,  
expressionb1right),  rest671);
 } 
;  ( 197,  ( ( _,  ( values::QQ_EXPRESSIONB expressionb1,  expressionbleft,  (expressionbright as expressionb1right))) !  _ !  ( _,  ( values::QQ_APAT apat1,  apatleft,  apatright)) !  ( _,  ( _,  
for_t1left,  _)) !  rest671)) => {  my  result = values::QQ_LIST_COMPREHENSION_FOR_CLAUSE (fn  _ =  {  my  (apat as apat1) = apat1 ();
 my  (expressionb as expressionb1) = expressionb1 ();
 (
   {   my { item => apat, ... } =   apat;
                                                
                                                elc::LIST_COMPREHENSION_FOR_CLAUSE 
                                                  { pattern    => SOURCE_CODE_REGION_FOR_PATTERN    (apat, (apatleft, apatright)),
                                                    expression => SOURCE_CODE_REGION_FOR_EXPRESSION (expressionb, (expressionbleft, expressionbright))
                                                  };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 52,  ( result,  for_t1left,  expressionb1right),  rest671);
 } 
;  ( 198,  ( ( _,  ( values::QQ_EXPRESSIONB expressionb1,  expressionbleft,  (expressionbright as expressionb1right))) !  ( _,  ( _,  where_t1left,  _)) !  rest671)) => {  my  result = 
values::QQ_LIST_COMPREHENSION_WHERE_CLAUSE (fn  _ =  {  my  (expressionb as expressionb1) = expressionb1 ();
 (
   elc::LIST_COMPREHENSION_WHERE_CLAUSE  (SOURCE_CODE_REGION_FOR_EXPRESSION (expressionb, (expressionbleft, expressionbright)) ));
 } );
 ( lr_table::NONTERM 53,  ( result,  where_t1left,  
expressionb1right),  rest671);
 } 
;  ( 199,  ( rest671)) => {  my  result = values::QQ_LIST_COMPREHENSION_CLAUSES (fn  _ =  (  [] ));
 ( lr_table::NONTERM 54,  ( result,  default_position,  default_position),  rest671);
 } 
;  ( 200,  ( ( _,  ( values::QQ_LIST_COMPREHENSION_CLAUSES list_comprehension_clauses1,  _,  list_comprehension_clauses1right)) !  ( _,  ( values::QQ_LIST_COMPREHENSION_WHERE_CLAUSE 
list_comprehension_where_clause1,  list_comprehension_where_clause1left,  _)) !  rest671)) => {  my  result = values::QQ_LIST_COMPREHENSION_CLAUSES (fn  _ =  {  my  (list_comprehension_where_clause
 as list_comprehension_where_clause1) = list_comprehension_where_clause1 ();
 my  (list_comprehension_clauses as list_comprehension_clauses1) = list_comprehension_clauses1 ();
 (
 list_comprehension_where_clause ! list_comprehension_clauses );
 } );
 ( lr_table::NONTERM 54,  ( result,  list_comprehension_where_clause1left,  list_comprehension_clauses1right),  rest671);
 } 
;  ( 201,  ( ( _,  ( values::QQ_LIST_COMPREHENSION_CLAUSES list_comprehension_clauses1,  _,  list_comprehension_clauses1right)) !  ( _,  ( values::QQ_LIST_COMPREHENSION_FOR_CLAUSE 
list_comprehension_for_clause1,  list_comprehension_for_clause1left,  _)) !  rest671)) => {  my  result = values::QQ_LIST_COMPREHENSION_CLAUSES (fn  _ =  {  my  (list_comprehension_for_clause as 
list_comprehension_for_clause1) = list_comprehension_for_clause1 ();
 my  (list_comprehension_clauses as list_comprehension_clauses1) = list_comprehension_clauses1 ();
 (
 list_comprehension_for_clause   ! list_comprehension_clauses );
 } );
 ( lr_table::NONTERM 54,  ( result,  list_comprehension_for_clause1left,  list_comprehension_clauses1right),  rest671);
 } 
;  ( 202,  ( ( _,  ( values::PASSIVEOP_ID passiveop_id1,  passiveop_id1left,  passiveop_id1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (passiveop_id as passiveop_id1
) = passiveop_id1 ();
 (VARIABLE_IN_EXPRESSION [make_value_symbol passiveop_id]);
 } );
 ( lr_table::NONTERM 49,  ( result,  passiveop_id1left,  passiveop_id1right),  rest671);
 } 
;  ( 203,  ( ( _,  ( values::QQ_UPPERCASE_PATH uppercase_path1,  uppercase_path1left,  uppercase_path1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (uppercase_path as 
uppercase_path1) = uppercase_path1 ();
 (VARIABLE_IN_EXPRESSION (uppercase_path make_value_symbol));
 } );
 ( lr_table::NONTERM 49,  ( result,  uppercase_path1left,  uppercase_path1right),  rest671)
;
 } 
;  ( 204,  ( ( _,  ( values::QQ_LOWERCASE_PATH lowercase_path1,  lowercase_path1left,  lowercase_path1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (lowercase_path as 
lowercase_path1) = lowercase_path1 ();
 (VARIABLE_IN_EXPRESSION (lowercase_path make_value_symbol));
 } );
 ( lr_table::NONTERM 49,  ( result,  lowercase_path1left,  lowercase_path1right),  rest671)
;
 } 
;  ( 205,  ( ( _,  ( values::QQ_OPERATORS_PATH operators_path1,  operators_path1left,  operators_path1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (operators_path as 
operators_path1) = operators_path1 ();
 (VARIABLE_IN_EXPRESSION (operators_path make_value_symbol));
 } );
 ( lr_table::NONTERM 49,  ( result,  operators_path1left,  operators_path1right),  rest671)
;
 } 
;  ( 206,  ( ( _,  ( values::QQ_INT int1,  int1left,  int1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (int as int1) = int1 ();
 (INT_CONSTANT_IN_EXPRESSION int);
 } 
);
 ( lr_table::NONTERM 49,  ( result,  int1left,  int1right),  rest671);
 } 
;  ( 207,  ( ( _,  ( values::UNT unt1,  unt1left,  unt1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (unt as unt1) = unt1 ();
 (UNT_CONSTANT_IN_EXPRESSION unt);
 } );

 ( lr_table::NONTERM 49,  ( result,  unt1left,  unt1right),  rest671);
 } 
;  ( 208,  ( ( _,  ( values::FLOAT float1,  float1left,  float1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (float as float1) = float1 ();
 (
FLOAT_CONSTANT_IN_EXPRESSION float);
 } );
 ( lr_table::NONTERM 49,  ( result,  float1left,  float1right),  rest671);
 } 
;  ( 209,  ( ( _,  ( values::STRING string1,  string1left,  string1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (string as string1) = string1 ();
 (
STRING_CONSTANT_IN_EXPRESSION string);
 } );
 ( lr_table::NONTERM 49,  ( result,  string1left,  string1right),  rest671);
 } 
;  ( 210,  ( ( _,  ( values::CHAR char1,  char1left,  char1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (char as char1) = char1 ();
 (CHAR_CONSTANT_IN_EXPRESSION char
);
 } );
 ( lr_table::NONTERM 49,  ( result,  char1left,  char1right),  rest671);
 } 
;  ( 211,  ( ( _,  ( values::QQ_SELECTOR selector1,  _,  (selectorright as selector1right))) !  ( _,  ( _,  (pre_dotleft as pre_dot1left),  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP
 (fn  _ =  {  my  (selector as selector1) = selector1 ();
 (mark_expression (RECORD_SELECTOR_EXPRESSION selector, pre_dotleft,  selectorright));
 } );
 ( lr_table::NONTERM 49,  ( result,  pre_dot1left
,  selector1right),  rest671);
 } 
;  ( 212,  ( ( _,  ( values::INT int1,  _,  (intright as int1right))) !  ( _,  ( _,  (hashleft as hash1left),  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (int as int1)
 = int1 ();
 (mark_expression (RECORD_SELECTOR_EXPRESSION (symbol::make_label_symbol (multiword_int::to_string int)), hashleft, intright));
 } );
 ( lr_table::NONTERM 49,  ( result,  hash1left,  
int1right),  rest671);
 } 
;  ( 213,  ( ( _,  ( _,  _,  (rbraceright as rbrace1right))) !  ( _,  ( values::QQ_RECORD_ELEMENTS record_elements1,  _,  _)) !  ( _,  ( _,  (lbraceleft as lbrace1left),  _)) !  rest671)) => {  my  
result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (record_elements as record_elements1) = record_elements1 ();
 (mark_expression (RECORD_IN_EXPRESSION record_elements, lbraceleft, rbraceright));
 } );
 
( lr_table::NONTERM 49,  ( result,  lbrace1left,  rbrace1right),  rest671);
 } 
;  ( 214,  ( ( _,  ( _,  _,  rbrace1right)) !  ( _,  ( _,  lbrace1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  (RECORD_IN_EXPRESSION NIL));
 ( lr_table::NONTERM 49,  ( 
result,  lbrace1left,  rbrace1right),  rest671);
 } 
;  ( 215,  ( ( _,  ( _,  _,  rparen1right)) !  ( _,  ( _,  lparen1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  (void_expression));
 ( lr_table::NONTERM 49,  ( result,  
lparen1left,  rparen1right),  rest671);
 } 
;  ( 216,  ( ( _,  ( _,  _,  rparen1right)) !  ( _,  ( values::QQ_EXPRESSION expression1,  _,  _)) !  ( _,  ( _,  lparen1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  { 
 my  (expression as expression1) = expression1 ();
 (expression);
 } );
 ( lr_table::NONTERM 49,  ( result,  lparen1left,  rparen1right),  rest671);
 } 
;  ( 217,  ( ( _,  ( _,  _,  rbrace1right)) !  ( _,  ( values::QQ_BLOCK_CONTENTS block_contents1,  _,  _)) !  ( _,  ( _,  lbrace1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _
 =  {  my  (block_contents as block_contents1) = block_contents1 ();
 (block_contents);
 } );
 ( lr_table::NONTERM 49,  ( result,  lbrace1left,  rbrace1right),  rest671);
 } 
;  ( 218,  ( ( _,  ( _,  _,  rparen1right)) !  ( _,  ( values::QQ_EXPRESSIONS_2_N expressions_2_n1,  _,  _)) !  ( _,  ( _,  lparen1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn 
 _ =  {  my  (expressions_2_n as expressions_2_n1) = expressions_2_n1 ();
 (TUPLE_EXPRESSION    expressions_2_n);
 } );
 ( lr_table::NONTERM 49,  ( result,  lparen1left,  rparen1right),  rest671);
 } 
;  ( 219,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( values::QQ_EXPRESSIONS_1_N expressions_1_n1,  _,  _)) !  ( _,  ( _,  lbracket1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP
 (fn  _ =  {  my  (expressions_1_n as expressions_1_n1) = expressions_1_n1 ();
 (LIST_EXPRESSION     expressions_1_n);
 } );
 ( lr_table::NONTERM 49,  ( result,  lbracket1left,  rbracket1right),  
rest671);
 } 
;  ( 220,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( _,  lbracket1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  (LIST_EXPRESSION     NIL));
 ( lr_table::NONTERM 49,  (
 result,  lbracket1left,  rbracket1right),  rest671);
 } 
;  ( 221,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( values::QQ_LIST_COMPREHENSION list_comprehension1,  _,  _)) !  ( _,  ( _,  lbracket1left,  _)) !  rest671)) => {  my  result = 
values::QQ_ATOMIC_EXP (fn  _ =  {  my  (list_comprehension as list_comprehension1) = list_comprehension1 ();
 (list_comprehension);
 } );
 ( lr_table::NONTERM 49,  ( result,  lbracket1left,  
rbracket1right),  rest671);
 } 
;  ( 222,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( values::QQ_EXPRESSIONS_1_N expressions_1_n1,  _,  _)) !  ( _,  ( _,  vectorstart1left,  _)) !  rest671)) => {  my  result = 
values::QQ_ATOMIC_EXP (fn  _ =  {  my  (expressions_1_n as expressions_1_n1) = expressions_1_n1 ();
 (VECTOR_IN_EXPRESSION   expressions_1_n);
 } );
 ( lr_table::NONTERM 49,  ( result,  
vectorstart1left,  rbracket1right),  rest671);
 } 
;  ( 223,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( _,  vectorstart1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  (VECTOR_IN_EXPRESSION   NIL));
 ( lr_table::NONTERM 
49,  ( result,  vectorstart1left,  rbracket1right),  rest671);
 } 
;  ( 224,  ( ( _,  ( values::ANTIQUOTE_ID antiquote_id1,  antiquote_id1left,  antiquote_id1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (antiquote_id as antiquote_id1
) = antiquote_id1 ();
 (VARIABLE_IN_EXPRESSION ( [ make_value_symbol antiquote_id ] ) );
 } );
 ( lr_table::NONTERM 49,  ( result,  antiquote_id1left,  antiquote_id1right),  rest671);
 } 
;  ( 225,  ( ( _,  ( values::QQ_QUOTE quote1,  quote1left,  quote1right)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (quote as quote1) = quote1 ();
 (LIST_EXPRESSION quote)
;
 } );
 ( lr_table::NONTERM 49,  ( result,  quote1left,  quote1right),  rest671);
 } 
;  ( 226,  ( ( _,  ( _,  _,  (end_tright as end_t1right))) !  ( _,  ( values::QQ_DARROW_RULES darrow_rules1,  _,  _)) !  ( _,  ( _,  (fn_tleft as fn_t1left),  _)) !  rest671)) => {  my  result = 
values::QQ_ATOMIC_EXP (fn  _ =  {  my  (darrow_rules as darrow_rules1) = darrow_rules1 ();
 (mark_expression (FN_EXPRESSION  darrow_rules,  fn_tleft, end_tright));
 } );
 ( lr_table::NONTERM 49,  ( 
result,  fn_t1left,  end_t1right),  rest671);
 } 
;  ( 227,  ( ( _,  ( _,  _,  (esac_tright as esac_t1right))) !  ( _,  ( values::QQ_DARROW_RULES darrow_rules1,  _,  _)) !  ( _,  ( values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  (
case_tleft as case_t1left),  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 my  (darrow_rules as darrow_rules1) = 
darrow_rules1 ();
 (
    {   expression =  PRE_FIXITY_EXPRESSION prefix_exp;
 
                                                 mark_expression (
                                                    CASE_EXPRESSION { expression, rules => darrow_rules },
                                                    case_tleft, esac_tright
                                                 );
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  case_t1left,  esac_t1right),  rest671);
 } 
;  ( 228,  ( ( _,  ( values::QQ_ELIFS elifs1,  elifsleft,  (elifsright as elifs1right))) !  ( _,  ( values::QQ_BLOCK_CONTENTS block_contents1,  block_contents1left,  block_contents1right)) !  ( _,  ( 
values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  if_t1left,  _)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 my  
block_contents1 = block_contents1 ();
 my  (elifs as elifs1) = elifs1 ();
 (
   {   IF_EXPRESSION
                                                    { test_case => PRE_FIXITY_EXPRESSION prefix_exp,
                                                      then_case => mark_expression (block_contents1, block_contents1left, block_contents1right),
                                                      else_case => mark_expression (elifs,           elifsleft,           elifsright          )
                                                    };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  if_t1left,  elifs1right),  rest671);
 } 
;  ( 229,  ( ( _,  ( values::BACKTICKS backticks1,  (backticksleft as backticks1left),  (backticksright as backticks1right))) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (
backticks as backticks1) = backticks1 ();
 (
    {
                                                 my (v, f)
                                                     =
                                                     make_value_and_fixity_symbols  (make_raw_symbol "backticks__op");

                                                 fun_item
                                                     =
                                                     { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], backticksleft, backticksright),
                                                       source_code_region => (backticksleft, backticksright),
                                                       fixity             => THE f
                                                     };

                                                 string_item
                                                     =
                                                     { item               => mark_expression (STRING_CONSTANT_IN_EXPRESSION backticks, backticksleft, backticksright),
                                                       source_code_region => (backticksleft, backticksright),
                                                       fixity             => THE f
                                                     };

                                                 PRE_FIXITY_EXPRESSION [ fun_item, string_item ];
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  backticks1left,  backticks1right),  rest671);
 } 
;  ( 230,  ( ( _,  ( values::DOT_BACKTICKS dot_backticks1,  (dot_backticksleft as dot_backticks1left),  (dot_backticksright as dot_backticks1right))) !  rest671)) => {  my  result = 
values::QQ_ATOMIC_EXP (fn  _ =  {  my  (dot_backticks as dot_backticks1) = dot_backticks1 ();
 (
    {
                                                 my (v, f)
                                                     =
                                                     make_value_and_fixity_symbols  (make_raw_symbol "dotbackticks__op");

                                                 fun_item
                                                     =
                                                     { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], dot_backticksleft, dot_backticksright),
                                                       source_code_region => (dot_backticksleft, dot_backticksright),
                                                       fixity             => THE f
                                                     };

                                                 string_item
                                                     =
                                                     { item               => mark_expression (STRING_CONSTANT_IN_EXPRESSION dot_backticks, dot_backticksleft, dot_backticksright),
                                                       source_code_region => (dot_backticksleft, dot_backticksright),
                                                       fixity             => THE f
                                                     };

                                                 PRE_FIXITY_EXPRESSION [ fun_item, string_item ];
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  dot_backticks1left,  dot_backticks1right),  rest671);
 } 
;  ( 231,  ( ( _,  ( values::DOT_QQUOTES dot_qquotes1,  (dot_qquotesleft as dot_qquotes1left),  (dot_qquotesright as dot_qquotes1right))) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _
 =  {  my  (dot_qquotes as dot_qquotes1) = dot_qquotes1 ();
 (
    {
                                                 my (v, f)
                                                     =
                                                     make_value_and_fixity_symbols  (make_raw_symbol "dotqquotes__op");

                                                 fun_item
                                                     =
                                                     { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], dot_qquotesleft, dot_qquotesright),
                                                       source_code_region => (dot_qquotesleft, dot_qquotesright),
                                                       fixity             => THE f
                                                     };

                                                 string_item
                                                     =
                                                     { item               => mark_expression (STRING_CONSTANT_IN_EXPRESSION dot_qquotes, dot_qquotesleft, dot_qquotesright),
                                                       source_code_region => (dot_qquotesleft, dot_qquotesright),
                                                       fixity             => THE f
                                                     };

                                                 PRE_FIXITY_EXPRESSION [ fun_item, string_item ];
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  dot_qquotes1left,  dot_qquotes1right),  rest671);
 } 
;  ( 232,  ( ( _,  ( values::DOT_QUOTES dot_quotes1,  (dot_quotesleft as dot_quotes1left),  (dot_quotesright as dot_quotes1right))) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  { 
 my  (dot_quotes as dot_quotes1) = dot_quotes1 ();
 (
    {
                                                 my (v, f)
                                                     =
                                                     make_value_and_fixity_symbols  (make_raw_symbol "dotquotes__op");

                                                 fun_item
                                                     =
                                                     { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], dot_quotesleft, dot_quotesright),
                                                       source_code_region => (dot_quotesleft, dot_quotesright),
                                                       fixity             => THE f
                                                     };

                                                 string_item
                                                     =
                                                     { item               => mark_expression (STRING_CONSTANT_IN_EXPRESSION dot_quotes, dot_quotesleft, dot_quotesright),
                                                       source_code_region => (dot_quotesleft, dot_quotesright),
                                                       fixity             => THE f
                                                     };

                                                 PRE_FIXITY_EXPRESSION [ fun_item, string_item ];
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  dot_quotes1left,  dot_quotes1right),  rest671);
 } 
;  ( 233,  ( ( _,  ( values::DOT_BROKETS dot_brokets1,  (dot_broketsleft as dot_brokets1left),  (dot_broketsright as dot_brokets1right))) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _
 =  {  my  (dot_brokets as dot_brokets1) = dot_brokets1 ();
 (
    {
                                                 my (v, f)
                                                     =
                                                     make_value_and_fixity_symbols  (make_raw_symbol "dotbrokets__op");

                                                 fun_item
                                                     =
                                                     { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], dot_broketsleft, dot_broketsright),
                                                       source_code_region => (dot_broketsleft, dot_broketsright),
                                                       fixity             => THE f
                                                     };

                                                 string_item
                                                     =
                                                     { item               => mark_expression (STRING_CONSTANT_IN_EXPRESSION dot_brokets, dot_broketsleft, dot_broketsright),
                                                       source_code_region => (dot_broketsleft, dot_broketsright),
                                                       fixity             => THE f
                                                     };

                                                 PRE_FIXITY_EXPRESSION [ fun_item, string_item ];
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  dot_brokets1left,  dot_brokets1right),  rest671);
 } 
;  ( 234,  ( ( _,  ( values::DOT_BARETS dot_barets1,  (dot_baretsleft as dot_barets1left),  (dot_baretsright as dot_barets1right))) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  { 
 my  (dot_barets as dot_barets1) = dot_barets1 ();
 (
    {
                                                 my (v, f)
                                                     =
                                                     make_value_and_fixity_symbols  (make_raw_symbol "dotbarets__op");

                                                 fun_item
                                                     =
                                                     { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], dot_baretsleft, dot_baretsright),
                                                       source_code_region => (dot_baretsleft, dot_baretsright),
                                                       fixity             => THE f
                                                     };

                                                 string_item
                                                     =
                                                     { item               => mark_expression (STRING_CONSTANT_IN_EXPRESSION dot_barets, dot_baretsleft, dot_baretsright),
                                                       source_code_region => (dot_baretsleft, dot_baretsright),
                                                       fixity             => THE f
                                                     };

                                                 PRE_FIXITY_EXPRESSION [ fun_item, string_item ];
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  dot_barets1left,  dot_barets1right),  rest671);
 } 
;  ( 235,  ( ( _,  ( values::DOT_SLASHETS dot_slashets1,  (dot_slashetsleft as dot_slashets1left),  (dot_slashetsright as dot_slashets1right))) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP
 (fn  _ =  {  my  (dot_slashets as dot_slashets1) = dot_slashets1 ();
 (
    {
                                                 my (v, f)
                                                     =
                                                     make_value_and_fixity_symbols  (make_raw_symbol "dotslashets__op");

                                                 fun_item
                                                     =
                                                     { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], dot_slashetsleft, dot_slashetsright),
                                                       source_code_region => (dot_slashetsleft, dot_slashetsright),
                                                       fixity             => THE f
                                                     };

                                                 string_item
                                                     =
                                                     { item               => mark_expression (STRING_CONSTANT_IN_EXPRESSION dot_slashets, dot_slashetsleft, dot_slashetsright),
                                                       source_code_region => (dot_slashetsleft, dot_slashetsright),
                                                       fixity             => THE f
                                                     };

                                                 PRE_FIXITY_EXPRESSION [ fun_item, string_item ];
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  dot_slashets1left,  dot_slashets1right),  rest671);
 } 
;  ( 236,  ( ( _,  ( values::DOT_HASHETS dot_hashets1,  (dot_hashetsleft as dot_hashets1left),  (dot_hashetsright as dot_hashets1right))) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _
 =  {  my  (dot_hashets as dot_hashets1) = dot_hashets1 ();
 (
    {
                                                 my (v, f)
                                                     =
                                                     make_value_and_fixity_symbols  (make_raw_symbol "dothashets__op");

                                                 fun_item
                                                     =
                                                     { item               => mark_expression (VARIABLE_IN_EXPRESSION [v], dot_hashetsleft, dot_hashetsright),
                                                       source_code_region => (dot_hashetsleft, dot_hashetsright),
                                                       fixity             => THE f
                                                     };

                                                 string_item
                                                     =
                                                     { item               => mark_expression (STRING_CONSTANT_IN_EXPRESSION dot_hashets, dot_hashetsleft, dot_hashetsright),
                                                       source_code_region => (dot_hashetsleft, dot_hashetsright),
                                                       fixity             => THE f
                                                     };

                                                 PRE_FIXITY_EXPRESSION [ fun_item, string_item ];
                                             }
                                        
);
 } );
 ( lr_table::NONTERM 49,  ( result,  dot_hashets1left,  dot_hashets1right),  rest671);
 } 
;  ( 237,  ( ( _,  ( _,  _,  (rbraceright as rbrace1right))) !  ( _,  ( values::QQ_BLOCK_CONTENTS block_contents1,  block_contentsleft,  block_contentsright)) !  ( _,  ( _,  (dot_lbraceleft as 
dot_lbrace1left),  dot_lbraceright)) !  rest671)) => {  my  result = values::QQ_ATOMIC_EXP (fn  _ =  {  my  (block_contents as block_contents1) = block_contents1 ();
 (
make_raw_syntax::thunk
                                             ( dot_lbraceleft,
                                               dot_lbraceright,
                                               block_contents,
                                               block_contentsleft,
                                               block_contentsright,
                                               rbraceright
                                        )     
);
 } );
 ( lr_table::NONTERM 49,  ( result,  dot_lbrace1left,  rbrace1right),  rest671);
 } 
;  ( 238,  ( ( _,  ( _,  fi_t1left,  fi_t1right)) !  rest671)) => {  my  result = values::QQ_ELIFS (fn  _ =  (void_expression));
 ( lr_table::NONTERM 55,  ( result,  fi_t1left,  fi_t1right),  rest671)
;
 } 
;  ( 239,  ( ( _,  ( _,  _,  fi_t1right)) !  ( _,  ( values::QQ_BLOCK_CONTENTS block_contents1,  _,  _)) !  ( _,  ( _,  else_t1left,  _)) !  rest671)) => {  my  result = values::QQ_ELIFS (fn  _ =  { 
 my  (block_contents as block_contents1) = block_contents1 ();
 (block_contents);
 } );
 ( lr_table::NONTERM 55,  ( result,  else_t1left,  fi_t1right),  rest671);
 } 
;  ( 240,  ( ( _,  ( values::QQ_ELIFS elifs1,  elifsleft,  (elifsright as elifs1right))) !  ( _,  ( values::QQ_BLOCK_CONTENTS block_contents1,  block_contentsleft,  block_contentsright)) !  ( _,  ( 
values::QQ_PREFIX_EXP prefix_exp1,  _,  _)) !  ( _,  ( _,  elif_t1left,  _)) !  rest671)) => {  my  result = values::QQ_ELIFS (fn  _ =  {  my  (prefix_exp as prefix_exp1) = prefix_exp1 ();
 my  (
block_contents as block_contents1) = block_contents1 ();
 my  (elifs as elifs1) = elifs1 ();
 (
   {
                                                IF_EXPRESSION
                                                    { test_case => PRE_FIXITY_EXPRESSION prefix_exp,
                                                      then_case => mark_expression (block_contents, block_contentsleft, block_contentsright),
                                                      else_case => mark_expression (elifs,          elifsleft,          elifsright         )
                                                    };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 55,  ( result,  elif_t1left,  elifs1right),  rest671);
 } 
;  ( 241,  ( ( _,  ( values::QQ_BLOCK_DECLARATIONS_AND_EXPRESSIONS block_declarations_and_expressions1,  block_declarations_and_expressions1left,  block_declarations_and_expressions1right)) !  rest671
)) => {  my  result = values::QQ_BLOCK_CONTENTS (fn  _ =  {  my  (block_declarations_and_expressions as block_declarations_and_expressions1) = block_declarations_and_expressions1 ();
 (
raw_syntax_junk::block_to_let  block_declarations_and_expressions);
 } );
 ( lr_table::NONTERM 42,  ( result,  block_declarations_and_expressions1left,  block_declarations_and_expressions1right),  
rest671);
 } 
;  ( 242,  ( ( _,  ( _,  _,  semi1right)) !  ( _,  ( values::QQ_DECLARATION_OR_EXPRESSION declaration_or_expression1,  declaration_or_expression1left,  _)) !  rest671)) => {  my  result = 
values::QQ_BLOCK_DECLARATIONS_AND_EXPRESSIONS (fn  _ =  {  my  (declaration_or_expression as declaration_or_expression1) = declaration_or_expression1 ();
 ([ declaration_or_expression ]);
 } );
 ( 
lr_table::NONTERM 43,  ( result,  declaration_or_expression1left,  semi1right),  rest671);
 } 
;  ( 243,  ( ( _,  ( values::QQ_BLOCK_DECLARATIONS_AND_EXPRESSIONS block_declarations_and_expressions1,  _,  block_declarations_and_expressions1right)) !  _ !  ( _,  ( 
values::QQ_DECLARATION_OR_EXPRESSION declaration_or_expression1,  declaration_or_expression1left,  _)) !  rest671)) => {  my  result = values::QQ_BLOCK_DECLARATIONS_AND_EXPRESSIONS (fn  _ =  {  my  (
declaration_or_expression as declaration_or_expression1) = declaration_or_expression1 ();
 my  (block_declarations_and_expressions as block_declarations_and_expressions1) = 
block_declarations_and_expressions1 ();
 (block_declarations_and_expressions @ [declaration_or_expression]);
 } );
 ( lr_table::NONTERM 43,  ( result,  declaration_or_expression1left,  
block_declarations_and_expressions1right),  rest671);
 } 
;  ( 244,  ( ( _,  ( values::QQ_MODIFIED_REGULAR_EXPRESSION modified_regular_expression1,  modified_regular_expression1left,  modified_regular_expression1right)) !  rest671)) => {  my  result = 
values::QQ_REGULAR_EXPRESSIONS (fn  _ =  {  my  (modified_regular_expression as modified_regular_expression1) = modified_regular_expression1 ();
 ( [ modified_regular_expression ] );
 } );
 ( 
lr_table::NONTERM 41,  ( result,  modified_regular_expression1left,  modified_regular_expression1right),  rest671);
 } 
;  ( 245,  ( ( _,  ( values::QQ_REGULAR_EXPRESSIONS regular_expressions1,  _,  regular_expressions1right)) !  ( _,  ( values::QQ_MODIFIED_REGULAR_EXPRESSION modified_regular_expression1,  
modified_regular_expression1left,  _)) !  rest671)) => {  my  result = values::QQ_REGULAR_EXPRESSIONS (fn  _ =  {  my  (modified_regular_expression as modified_regular_expression1) = 
modified_regular_expression1 ();
 my  (regular_expressions as regular_expressions1) = regular_expressions1 ();
 (modified_regular_expression ! regular_expressions);
 } );
 ( lr_table::NONTERM 41,  ( 
result,  modified_regular_expression1left,  regular_expressions1right),  rest671);
 } 
;  ( 246,  ( ( _,  ( values::QQ_REGULAR_EXPRESSION regular_expression1,  regular_expression1left,  regular_expression1right)) !  rest671)) => {  my  result = values::QQ_MODIFIED_REGULAR_EXPRESSION
 (fn  _ =  {  my  (regular_expression as regular_expression1) = regular_expression1 ();
 (regular_expression);
 } );
 ( lr_table::NONTERM 39,  ( result,  regular_expression1left,  
regular_expression1right),  rest671);
 } 
;  ( 247,  ( ( _,  ( _,  _,  star1right)) !  ( _,  ( values::QQ_REGULAR_EXPRESSION regular_expression1,  regular_expression1left,  _)) !  rest671)) => {  my  result = 
values::QQ_MODIFIED_REGULAR_EXPRESSION (fn  _ =  {  my  (regular_expression as regular_expression1) = regular_expression1 ();
 (REGEX_STAR regular_expression);
 } );
 ( lr_table::NONTERM 39,  ( result
,  regular_expression1left,  star1right),  rest671);
 } 
;  ( 248,  ( ( _,  ( _,  _,  pre_star1right)) !  ( _,  ( values::QQ_REGULAR_EXPRESSION regular_expression1,  regular_expression1left,  _)) !  rest671)) => {  my  result = 
values::QQ_MODIFIED_REGULAR_EXPRESSION (fn  _ =  {  my  (regular_expression as regular_expression1) = regular_expression1 ();
 (REGEX_STAR regular_expression);
 } );
 ( lr_table::NONTERM 39,  ( result
,  regular_expression1left,  pre_star1right),  rest671);
 } 
;  ( 249,  ( ( _,  ( values::STRING string1,  string1left,  string1right)) !  rest671)) => {  my  result = values::QQ_REGULAR_EXPRESSION (fn  _ =  {  my  (string as string1) = string1 ();
 (
REGEX_STRING string);
 } );
 ( lr_table::NONTERM 40,  ( result,  string1left,  string1right),  rest671);
 } 
;  ( 250,  ( ( _,  ( _,  pre_dot1left,  pre_dot1right)) !  rest671)) => {  my  result = values::QQ_REGULAR_EXPRESSION (fn  _ =  (REGEX_DOT));
 ( lr_table::NONTERM 40,  ( result,  pre_dot1left,  
pre_dot1right),  rest671);
 } 
;  ( 251,  ( ( _,  ( _,  dot1left,  dot1right)) !  rest671)) => {  my  result = values::QQ_REGULAR_EXPRESSION (fn  _ =  (REGEX_DOT));
 ( lr_table::NONTERM 40,  ( result,  dot1left,  dot1right),  
rest671);
 } 
;  ( 252,  ( ( _,  ( values::QQ_DECLARATION declaration1,  declaration1left,  declaration1right)) !  rest671)) => {  my  result = values::QQ_DECLARATION_OR_EXPRESSION (fn  _ =  {  my  (declaration as 
declaration1) = declaration1 ();
 (declaration);
 } );
 ( lr_table::NONTERM 44,  ( result,  declaration1left,  declaration1right),  rest671);
 } 
;  ( 253,  ( ( _,  ( values::QQ_EXPRESSION expression1,  (expressionleft as expression1left),  (expressionright as expression1right))) !  rest671)) => {  my  result = 
values::QQ_DECLARATION_OR_EXPRESSION (fn  _ =  {  my  (expression as expression1) = expression1 ();
 (expression_to_declaration( expression, expressionleft, expressionright ));
 } );
 ( 
lr_table::NONTERM 44,  ( result,  expression1left,  expression1right),  rest671);
 } 
;  ( 254,  ( ( _,  ( _,  _,  (end_tright as end_t1right))) !  ( _,  ( values::QQ_MAYBE_DECLARATIONS maybe_declarations2,  maybe_declarations2left,  maybe_declarations2right)) !  _ !  ( _,  ( 
values::QQ_MAYBE_DECLARATIONS maybe_declarations1,  maybe_declarations1left,  maybe_declarations1right)) !  ( _,  ( _,  (stipulate_tleft as stipulate_t1left),  _)) !  rest671)) => {  my  result = 
values::QQ_DECLARATION_OR_EXPRESSION (fn  _ =  {  my  maybe_declarations1 = maybe_declarations1 ();
 my  maybe_declarations2 = maybe_declarations2 ();
 (
   mark_declaration (
                                                LOCAL_DECLARATIONS (
                                                    mark_declaration (maybe_declarations1, maybe_declarations1left, maybe_declarations1right),
                                                    mark_declaration (maybe_declarations2, maybe_declarations2left, maybe_declarations2right)
                                                ),
                                                stipulate_tleft,
                                                end_tright
                                            )
                                        
);
 } );
 ( lr_table::NONTERM 44,  ( result,  stipulate_t1left,  end_t1right),  rest671);
 } 
;  ( 255,  ( ( _,  ( values::ENDQ endq1,  _,  endq1right)) !  ( _,  ( _,  beginq1left,  _)) !  rest671)) => {  my  result = values::QQ_QUOTE (fn  _ =  {  my  (endq as endq1) = endq1 ();
 (
 [ quote_expression endq ] );
 } );
 ( lr_table::NONTERM 58,  ( result,  beginq1left,  endq1right),  rest671);
 } 
;  ( 256,  ( ( _,  ( values::ENDQ endq1,  _,  endq1right)) !  ( _,  ( values::QQ_OT_LIST ot_list1,  _,  _)) !  ( _,  ( _,  beginq1left,  _)) !  rest671)) => {  my  result = values::QQ_QUOTE (fn  _ = 
 {  my  (ot_list as ot_list1) = ot_list1 ();
 my  (endq as endq1) = endq1 ();
 (ot_list @ [ quote_expression endq ] );
 } );
 ( lr_table::NONTERM 58,  ( result,  beginq1left,  endq1right),  rest671)
;
 } 
;  ( 257,  ( ( _,  ( values::QQ_ATOMIC_EXP atomic_exp1,  _,  atomic_exp1right)) !  ( _,  ( values::CHUNKL chunkl1,  chunkl1left,  _)) !  rest671)) => {  my  result = values::QQ_OT_LIST (fn  _ =  { 
 my  (chunkl as chunkl1) = chunkl1 ();
 my  (atomic_exp as atomic_exp1) = atomic_exp1 ();
 ( [ quote_expression chunkl,   antiquote_expression  atomic_exp ] );
 } );
 ( lr_table::NONTERM 59,  ( result
,  chunkl1left,  atomic_exp1right),  rest671);
 } 
;  ( 258,  ( ( _,  ( values::QQ_OT_LIST ot_list1,  _,  ot_list1right)) !  ( _,  ( values::QQ_ATOMIC_EXP atomic_exp1,  _,  _)) !  ( _,  ( values::CHUNKL chunkl1,  chunkl1left,  _)) !  rest671)) => { 
 my  result = values::QQ_OT_LIST (fn  _ =  {  my  (chunkl as chunkl1) = chunkl1 ();
 my  (atomic_exp as atomic_exp1) = atomic_exp1 ();
 my  (ot_list as ot_list1) = ot_list1 ();
 (
   quote_expression chunkl ! antiquote_expression atomic_exp ! ot_list);
 } );
 ( lr_table::NONTERM 59,  ( result,  chunkl1left,  ot_list1right),  rest671);
 } 
;  ( 259,  ( ( _,  ( values::QQ_EXPRESSIONS_2_N expressions_2_n1,  _,  expressions_2_n1right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  _)) !  rest671)) => {  my  result =
 values::QQ_EXPRESSIONS_2_N (fn  _ =  {  my  (expression as expression1) = expression1 ();
 my  (expressions_2_n as expressions_2_n1) = expressions_2_n1 ();
 (expression ! expressions_2_n);
 } );
 ( 
lr_table::NONTERM 57,  ( result,  expression1left,  expressions_2_n1right),  rest671);
 } 
;  ( 260,  ( ( _,  ( values::QQ_EXPRESSION expression2,  _,  expression2right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  _)) !  rest671)) => {  my  result = 
values::QQ_EXPRESSIONS_2_N (fn  _ =  {  my  expression1 = expression1 ();
 my  expression2 = expression2 ();
 ( [ expression1, expression2 ] );
 } );
 ( lr_table::NONTERM 57,  ( result,  
expression1left,  expression2right),  rest671);
 } 
;  ( 261,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  expression1right)) !  rest671)) => {  my  result = values::QQ_EXPRESSIONS_1_N (fn  _ =  {  my  (expression as expression1) = 
expression1 ();
 ( [ expression ] );
 } );
 ( lr_table::NONTERM 56,  ( result,  expression1left,  expression1right),  rest671);
 } 
;  ( 262,  ( ( _,  ( values::QQ_EXPRESSIONS_1_N expressions_1_n1,  _,  expressions_1_n1right)) !  _ !  ( _,  ( values::QQ_EXPRESSION expression1,  expression1left,  _)) !  rest671)) => {  my  result =
 values::QQ_EXPRESSIONS_1_N (fn  _ =  {  my  (expression as expression1) = expression1 ();
 my  (expressions_1_n as expressions_1_n1) = expressions_1_n1 ();
 (expression ! expressions_1_n);
 } );
 ( 
lr_table::NONTERM 56,  ( result,  expression1left,  expressions_1_n1right),  rest671);
 } 
;  ( 263,  ( ( _,  ( values::QQ_PATTERN pattern2,  _,  pattern2right)) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  pattern1left,  _)) !  rest671)) => {  my  result = values::QQ_PATTERN (fn  _ =  { 
 my  pattern1 = pattern1 ();
 my  pattern2 = pattern2 ();
 (layered   (pattern1,   pattern2,   error (pattern1left, pattern2right)));
 } );
 ( lr_table::NONTERM 60,  ( result,  pattern1left,  
pattern2right),  rest671);
 } 
;  ( 264,  ( ( _,  ( values::QQ_ANYTYPE anytype1,  _,  anytype1right)) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  pattern1left,  _)) !  rest671)) => {  my  result = values::QQ_PATTERN (fn  _ =  { 
 my  (pattern as pattern1) = pattern1 ();
 my  (anytype as anytype1) = anytype1 ();
 (TYPE_CONSTRAINT_PATTERN {   pattern,  type_constraint => anytype } );
 } );
 ( lr_table::NONTERM 60,  ( result,  
pattern1left,  anytype1right),  rest671);
 } 
;  ( 265,  ( ( _,  ( values::QQ_APATS apats1,  apats1left,  apats1right)) !  rest671)) => {  my  result = values::QQ_PATTERN (fn  _ =  {  my  (apats as apats1) = apats1 ();
 (PRE_FIXITY_PATTERN apats)
;
 } );
 ( lr_table::NONTERM 60,  ( result,  apats1left,  apats1right),  rest671);
 } 
;  ( 266,  ( ( _,  ( values::QQ_POSTFIX_PAT postfix_pat1,  postfix_pat1left,  postfix_pat1right)) !  rest671)) => {  my  result = values::QQ_APATS (fn  _ =  {  my  (postfix_pat as postfix_pat1) = 
postfix_pat1 ();
 ( [ postfix_pat ] );
 } );
 ( lr_table::NONTERM 80,  ( result,  postfix_pat1left,  postfix_pat1right),  rest671);
 } 
;  ( 267,  ( ( _,  ( values::QQ_APATS apats1,  _,  apats1right)) !  ( _,  ( values::QQ_POSTFIX_PAT postfix_pat1,  postfix_pat1left,  _)) !  rest671)) => {  my  result = values::QQ_APATS (fn  _ =  { 
 my  (postfix_pat as postfix_pat1) = postfix_pat1 ();
 my  (apats as apats1) = apats1 ();
 (   postfix_pat ! apats);
 } );
 ( lr_table::NONTERM 80,  ( result,  postfix_pat1left,  apats1right),  
rest671);
 } 
;  ( 268,  ( ( _,  ( values::QQ_APAT apat1,  apat1left,  apat1right)) !  rest671)) => {  my  result = values::QQ_POSTFIX_PAT (fn  _ =  {  my  (apat as apat1) = apat1 ();
 (apat);
 } );
 ( 
lr_table::NONTERM 64,  ( result,  apat1left,  apat1right),  rest671);
 } 
;  ( 269,  ( ( _,  ( values::QQ_POSTFIX_OP postfix_op1,  postfix_opleft,  (postfix_opright as postfix_op1right))) !  ( _,  ( values::QQ_APAT apat1,  (apatleft as apat1left),  _)) !  rest671)) => { 
 my  result = values::QQ_POSTFIX_PAT (fn  _ =  {  my  (apat as apat1) = apat1 ();
 my  (postfix_op as postfix_op1) = postfix_op1 ();
 (
   {   p_op = {   item                => VARIABLE_IN_PATTERN [make_value_symbol postfix_op], 
                                                           source_code_region => (postfix_opleft, postfix_opright),
                                                           fixity             => NULL
                                                       };

                                                pattern = PRE_FIXITY_PATTERN [ p_op, apat ];

                                                {   item               =>  pattern,
                                                    source_code_region =>  (apatleft, postfix_opright),
                                                    fixity             =>  NULL
                                                };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 64,  ( result,  apat1left,  postfix_op1right),  rest671);
 } 
;  ( 270,  ( ( _,  ( values::QQ_APAT' apat'1,  (apat'left as apat'1left),  (apat'right as apat'1right))) !  rest671)) => {  my  result = values::QQ_APAT (fn  _ =  {  my  (apat' as apat'1) = apat'1 ()
;
 (   {   item               => apat',
                                                source_code_region => (apat'left, apat'right),
                                                fixity             => NULL
                                             }
                                        );
 } );
 ( lr_table::NONTERM 62,  ( result,  apat'1left
,  apat'1right),  rest671);
 } 
;  ( 271,  ( ( _,  ( _,  _,  (rparenright as rparen1right))) !  ( _,  ( values::QQ_PATTERN pattern1,  _,  _)) !  ( _,  ( _,  (lparenleft as lparen1left),  _)) !  rest671)) => {  my  result = 
values::QQ_APAT (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 (
   {   item               => pattern,
                                                source_code_region => (lparenleft, rparenright),
                                                fixity             => NULL
                                            }
                                        );
 } );
 ( lr_table::NONTERM 62,  ( result,  lparen1left,  
rparen1right),  rest671);
 } 
;  ( 272,  ( ( _,  ( values::QQ_VALUE_ID value_id1,  (value_idleft as value_id1left),  (value_idright as value_id1right))) !  rest671)) => {  my  result = values::QQ_APAT (fn  _ =  {  my  (value_id
 as value_id1) = value_id1 ();
 (
   {   my (v, f)
                                                    =
                                                    make_value_and_fixity_symbols value_id;

                                                {   item               => VARIABLE_IN_PATTERN [v], 
                                                    source_code_region => (value_idleft, value_idright),
                                                    fixity             => THE f
                                                };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 62,  ( result,  value_id1left,  value_id1right),  rest671);
 } 
;  ( 273,  ( ( _,  ( values::PASSIVEOP_ID passiveop_id1,  (passiveop_idleft as passiveop_id1left),  (passiveop_idright as passiveop_id1right))) !  rest671)) => {  my  result = values::QQ_APAT (fn  _
 =  {  my  (passiveop_id as passiveop_id1) = passiveop_id1 ();
 (
   {   {   item        => VARIABLE_IN_PATTERN [make_value_symbol passiveop_id], 
                                                    source_code_region => (passiveop_idleft, passiveop_idright),
                                                    fixity             => NULL
                                                };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 62,  ( result,  passiveop_id1left,  passiveop_id1right),  rest671);
 } 
;  ( 274,  ( ( _,  ( values::QQ_PREFIX_OP prefix_op1,  (prefix_opleft as prefix_op1left),  (prefix_opright as prefix_op1right))) !  rest671)) => {  my  result = values::QQ_APAT (fn  _ =  {  my  (
prefix_op as prefix_op1) = prefix_op1 ();
 (
   {   {   item        => VARIABLE_IN_PATTERN [make_value_symbol prefix_op], 
                                                    source_code_region => (prefix_opleft, prefix_opright),
                                                    fixity             => NULL
                                                };
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 62,  ( result,  prefix_op1left,  prefix_op1right),  rest671);
 } 
;  ( 275,  ( ( _,  ( _,  _,  (rparenright as rparen1right))) !  ( _,  ( _,  (lparenleft as lparen1left),  _)) !  rest671)) => {  my  result = values::QQ_APAT (fn  _ =  (
   {   item               => void_pattern,
                                                source_code_region => (lparenleft, rparenright),
                                                fixity             => NULL
                                            }
                                        ));
 ( lr_table::NONTERM 62,  ( result,  lparen1left
,  rparen1right),  rest671);
 } 
;  ( 276,  ( ( _,  ( _,  _,  (rparenright as rparen1right))) !  ( _,  ( values::QQ_PAT_LIST pat_list1,  _,  _)) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  _,  _)) !  ( _,  ( _,  (lparenleft as 
lparen1left),  _)) !  rest671)) => {  my  result = values::QQ_APAT (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 my  (pat_list as pat_list1) = pat_list1 ();
 (
   {   item                => TUPLE_PATTERN ( pattern ! pat_list),
                                                source_code_region => (lparenleft, rparenright),
                                                fixity             => NULL
                                            }
                                        );
 } );
 ( lr_table::NONTERM 62,  ( 
result,  lparen1left,  rparen1right),  rest671);
 } 
;  ( 277,  ( ( _,  ( _,  _,  (rparenright as rparen1right))) !  ( _,  ( values::QQ_OR_PAT_LIST or_pat_list1,  _,  _)) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  _,  _)) !  ( _,  ( _,  (lparenleft
 as lparen1left),  _)) !  rest671)) => {  my  result = values::QQ_APAT (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 my  (or_pat_list as or_pat_list1) = or_pat_list1 ();
 (
   {   item                => OR_PATTERN (pattern ! or_pat_list),
                                                source_code_region => (lparenleft, rparenright),
                                                fixity             => NULL
                                            }
                                        );
 } );
 ( lr_table::NONTERM 62,  ( result,  
lparen1left,  rparen1right),  rest671);
 } 
;  ( 278,  ( ( _,  ( values::QQ_UPPERCASE_PATH uppercase_path1,  uppercase_path1left,  uppercase_path1right)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my  (uppercase_path as 
uppercase_path1) = uppercase_path1 ();
 (VARIABLE_IN_PATTERN (uppercase_path make_value_symbol));
 } );
 ( lr_table::NONTERM 63,  ( result,  uppercase_path1left,  uppercase_path1right),  rest671);
 } 
;  ( 279,  ( ( _,  ( values::QQ_LOWERCASE_PATH lowercase_path1,  lowercase_path1left,  lowercase_path1right)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my  (lowercase_path as 
lowercase_path1) = lowercase_path1 ();
 (VARIABLE_IN_PATTERN (lowercase_path make_value_symbol));
 } );
 ( lr_table::NONTERM 63,  ( result,  lowercase_path1left,  lowercase_path1right),  rest671);
 } 
;  ( 280,  ( ( _,  ( values::QQ_OPERATORS_PATH operators_path1,  operators_path1left,  operators_path1right)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my  (operators_path as 
operators_path1) = operators_path1 ();
 (VARIABLE_IN_PATTERN (operators_path make_value_symbol));
 } );
 ( lr_table::NONTERM 63,  ( result,  operators_path1left,  operators_path1right),  rest671);
 } 
;  ( 281,  ( ( _,  ( values::QQ_INT int1,  int1left,  int1right)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my  (int as int1) = int1 ();
 (INT_CONSTANT_IN_PATTERN       int);
 } )
;
 ( lr_table::NONTERM 63,  ( result,  int1left,  int1right),  rest671);
 } 
;  ( 282,  ( ( _,  ( values::UNT unt1,  unt1left,  unt1right)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my  (unt as unt1) = unt1 ();
 (UNT_CONSTANT_IN_PATTERN       unt);
 } );
 (
 lr_table::NONTERM 63,  ( result,  unt1left,  unt1right),  rest671);
 } 
;  ( 283,  ( ( _,  ( values::STRING string1,  string1left,  string1right)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my  (string as string1) = string1 ();
 (
STRING_CONSTANT_IN_PATTERN string);
 } );
 ( lr_table::NONTERM 63,  ( result,  string1left,  string1right),  rest671);
 } 
;  ( 284,  ( ( _,  ( values::CHAR char1,  char1left,  char1right)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my  (char as char1) = char1 ();
 (CHAR_CONSTANT_IN_PATTERN     char)
;
 } );
 ( lr_table::NONTERM 63,  ( result,  char1left,  char1right),  rest671);
 } 
;  ( 285,  ( ( _,  ( _,  wild1left,  wild1right)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  (WILDCARD_PATTERN));
 ( lr_table::NONTERM 63,  ( result,  wild1left,  wild1right),  rest671
);
 } 
;  ( 286,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( _,  lbracket1left,  _)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  (LIST_PATTERN   NIL));
 ( lr_table::NONTERM 63,  ( result,  
lbracket1left,  rbracket1right),  rest671);
 } 
;  ( 287,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( values::QQ_PAT_LIST pat_list1,  _,  _)) !  ( _,  ( _,  lbracket1left,  _)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my  (
pat_list as pat_list1) = pat_list1 ();
 (LIST_PATTERN   pat_list);
 } );
 ( lr_table::NONTERM 63,  ( result,  lbracket1left,  rbracket1right),  rest671);
 } 
;  ( 288,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( _,  vectorstart1left,  _)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  (VECTOR_PATTERN NIL));
 ( lr_table::NONTERM 63,  ( result
,  vectorstart1left,  rbracket1right),  rest671);
 } 
;  ( 289,  ( ( _,  ( _,  _,  rbracket1right)) !  ( _,  ( values::QQ_PAT_LIST pat_list1,  _,  _)) !  ( _,  ( _,  vectorstart1left,  _)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  {  my 
 (pat_list as pat_list1) = pat_list1 ();
 (VECTOR_PATTERN pat_list);
 } );
 ( lr_table::NONTERM 63,  ( result,  vectorstart1left,  rbracket1right),  rest671);
 } 
;  ( 290,  ( ( _,  ( _,  _,  rbrace1right)) !  ( _,  ( _,  lbrace1left,  _)) !  rest671)) => {  my  result = values::QQ_APAT' (fn  _ =  (void_pattern));
 ( lr_table::NONTERM 63,  ( result,  
lbrace1left,  rbrace1right),  rest671);
 } 
;  ( 291,  ( ( _,  ( _,  _,  (rbraceright as rbrace1right))) !  ( _,  ( values::QQ_PLABELS plabels1,  _,  _)) !  ( _,  ( _,  (lbraceleft as lbrace1left),  _)) !  rest671)) => {  my  result = 
values::QQ_APAT' (fn  _ =  {  my  (plabels as plabels1) = plabels1 ();
 (
   {   my (definition, is_incomplete) = plabels;

                                                SOURCE_CODE_REGION_FOR_PATTERN (
                                                    RECORD_PATTERN {
                                                        definition,
                                                        is_incomplete
                                                    },
                                                    (lbraceleft, rbraceright)
                                                );
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 63,  ( result,  lbrace1left,  rbrace1right),  rest671);
 } 
;  ( 292,  ( ( _,  ( values::QQ_PATTERN pattern1,  _,  pattern1right)) !  _ !  ( _,  ( values::QQ_SELECTOR selector1,  selector1left,  _)) !  rest671)) => {  my  result = values::QQ_PLABEL (fn  _ = 
 {  my  (selector as selector1) = selector1 ();
 my  (pattern as pattern1) = pattern1 ();
 (
   {
                                                (selector, pattern);
                                            }
                                        );
 } );
 ( lr_table::NONTERM 65,  ( 
result,  selector1left,  pattern1right),  rest671);
 } 
;  ( 293,  ( ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left,  lowercase_id1right)) !  rest671)) => {  my  result = values::QQ_PLABEL (fn  _ =  {  my  (lowercase_id as lowercase_id1)
 = lowercase_id1 ();
 (make_label_symbol lowercase_id,   VARIABLE_IN_PATTERN [ make_value_symbol lowercase_id ] );
 } );
 ( lr_table::NONTERM 65,  ( result,  lowercase_id1left,  lowercase_id1right),  
rest671);
 } 
;  ( 294,  ( ( _,  ( values::QQ_PATTERN pattern1,  _,  pattern1right)) !  _ !  ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left,  _)) !  rest671)) => {  my  result = values::QQ_PLABEL
 (fn  _ =  {  my  (lowercase_id as lowercase_id1) = lowercase_id1 ();
 my  (pattern as pattern1) = pattern1 ();
 (
   make_label_symbol lowercase_id, 
                                            AS_PATTERN {
                                                variable_pattern   => VARIABLE_IN_PATTERN [make_value_symbol lowercase_id], 
                                                expression_pattern => pattern
                                            }
                                        );
 } )
;
 ( lr_table::NONTERM 65,  ( result,  lowercase_id1left,  pattern1right),  rest671);
 } 
;  ( 295,  ( ( _,  ( values::QQ_ANYTYPE anytype1,  _,  anytype1right)) !  _ !  ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left,  _)) !  rest671)) => {  my  result = values::QQ_PLABEL
 (fn  _ =  {  my  (lowercase_id as lowercase_id1) = lowercase_id1 ();
 my  (anytype as anytype1) = anytype1 ();
 (
   make_label_symbol lowercase_id,
                                            TYPE_CONSTRAINT_PATTERN {
                                                pattern        => VARIABLE_IN_PATTERN [ make_value_symbol lowercase_id ],
                                                type_constraint => anytype
                                            }
                                        )
;
 } );
 ( lr_table::NONTERM 65,  ( result,  lowercase_id1left,  anytype1right),  rest671);
 } 
;  ( 296,  ( ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  _,  lowercase_id1right)) !  ( _,  ( values::QQ_ANYTYPE anytype1,  anytype1left,  _)) !  rest671)) => {  my  result = values::QQ_PLABEL (fn 
 _ =  {  my  (anytype as anytype1) = anytype1 ();
 my  (lowercase_id as lowercase_id1) = lowercase_id1 ();
 (
   make_label_symbol lowercase_id,
                                            TYPE_CONSTRAINT_PATTERN {
                                                pattern        => VARIABLE_IN_PATTERN [ make_value_symbol lowercase_id ],
                                                type_constraint => anytype
                                            }
                                        )
;
 } );
 ( lr_table::NONTERM 65,  ( result,  anytype1left,  lowercase_id1right),  rest671);
 } 
;  ( 297,  ( ( _,  ( values::QQ_PATTERN pattern1,  _,  pattern1right)) !  _ !  ( _,  ( values::QQ_ANYTYPE anytype1,  _,  _)) !  _ !  ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_id1left, 
 _)) !  rest671)) => {  my  result = values::QQ_PLABEL (fn  _ =  {  my  (lowercase_id as lowercase_id1) = lowercase_id1 ();
 my  (anytype as anytype1) = anytype1 ();
 my  (pattern as pattern1) = 
pattern1 ();
 (
   make_label_symbol lowercase_id,
                                            AS_PATTERN {
                                                variable_pattern => TYPE_CONSTRAINT_PATTERN {
                                                                      pattern        => VARIABLE_IN_PATTERN [ make_value_symbol lowercase_id ],
                                                                      type_constraint => anytype
                                                                   },
                                                expression_pattern => pattern
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 65,  ( result,  lowercase_id1left,  pattern1right),  rest671);
 } 
;  ( 298,  ( ( _,  ( values::QQ_PLABEL plabel1,  plabel1left,  plabel1right)) !  rest671)) => {  my  result = values::QQ_PLABELS (fn  _ =  {  my  (plabel as plabel1) = plabel1 ();
 ([plabel], FALSE)
;
 } );
 ( lr_table::NONTERM 66,  ( result,  plabel1left,  plabel1right),  rest671);
 } 
;  ( 299,  ( ( _,  ( _,  dotdotdot1left,  dotdotdot1right)) !  rest671)) => {  my  result = values::QQ_PLABELS (fn  _ =  (NIL, TRUE));
 ( lr_table::NONTERM 66,  ( result,  dotdotdot1left,  
dotdotdot1right),  rest671);
 } 
;  ( 300,  ( ( _,  ( values::QQ_PLABELS plabels1,  _,  plabels1right)) !  _ !  ( _,  ( values::QQ_PLABEL plabel1,  plabel1left,  _)) !  rest671)) => {  my  result = values::QQ_PLABELS (fn  _ =  {  my 
 (plabel as plabel1) = plabel1 ();
 my  (plabels as plabels1) = plabels1 ();
 (   { my (a, (b, is_incomplete))   =   (plabel, plabels);

                                                 (a ! b, is_incomplete);
                                            }
                                        );
 } );
 ( 
lr_table::NONTERM 66,  ( result,  plabel1left,  plabels1right),  rest671);
 } 
;  ( 301,  ( ( _,  ( values::QQ_PATTERN pattern1,  pattern1left,  pattern1right)) !  rest671)) => {  my  result = values::QQ_PAT_LIST (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 (
 [ pattern ] );
 } );
 ( lr_table::NONTERM 68,  ( result,  pattern1left,  pattern1right),  rest671);
 } 
;  ( 302,  ( ( _,  ( values::QQ_PAT_LIST pat_list1,  _,  pat_list1right)) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  pattern1left,  _)) !  rest671)) => {  my  result = values::QQ_PAT_LIST (fn  _ = 
 {  my  (pattern as pattern1) = pattern1 ();
 my  (pat_list as pat_list1) = pat_list1 ();
 (   pattern ! pat_list);
 } );
 ( lr_table::NONTERM 68,  ( result,  pattern1left,  pat_list1right),  rest671)
;
 } 
;  ( 303,  ( ( _,  ( values::QQ_PATTERN pattern1,  pattern1left,  pattern1right)) !  rest671)) => {  my  result = values::QQ_OR_PAT_LIST (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 (
 [ pattern ] );
 } );
 ( lr_table::NONTERM 69,  ( result,  pattern1left,  pattern1right),  rest671);
 } 
;  ( 304,  ( ( _,  ( values::QQ_OR_PAT_LIST or_pat_list1,  _,  or_pat_list1right)) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  pattern1left,  _)) !  rest671)) => {  my  result = 
values::QQ_OR_PAT_LIST (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 my  (or_pat_list as or_pat_list1) = or_pat_list1 ();
 (   pattern ! or_pat_list);
 } );
 ( lr_table::NONTERM 69,  ( result
,  pattern1left,  or_pat_list1right),  rest671);
 } 
;  ( 305,  ( ( _,  ( values::QQ_VB vb2,  _,  vb2right)) !  _ !  ( _,  ( values::QQ_VB vb1,  vb1left,  _)) !  rest671)) => {  my  result = values::QQ_VB (fn  _ =  {  my  vb1 = vb1 ();
 my  vb2 = vb2 ()
;
 (vb1 @ vb2);
 } );
 ( lr_table::NONTERM 70,  ( result,  vb1left,  vb2right),  rest671);
 } 
;  ( 306,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  patternleft,  _)) !  ( _,  ( _,  lazy_t1left,  _)) ! 
 rest671)) => {  my  result = values::QQ_VB (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 my  (expression as expression1) = expression1 ();
 (
   [   SOURCE_CODE_REGION_FOR_NAMED_VALUE (
                                                    NAMED_VALUE {
                                                        expression,
                                                        pattern,
                                                        is_lazy    => TRUE
                                                    },
                                                    (patternleft, expressionright)
                                                )
                                            ]
                                        
);
 } );
 ( lr_table::NONTERM 70,  ( result,  lazy_t1left,  expression1right),  rest671);
 } 
;  ( 307,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_PATTERN pattern1,  (patternleft as pattern1left),  _)) !  rest671)) =>
 {  my  result = values::QQ_VB (fn  _ =  {  my  (pattern as pattern1) = pattern1 ();
 my  (expression as expression1) = expression1 ();
 (
   [   SOURCE_CODE_REGION_FOR_NAMED_VALUE (
                                                    NAMED_VALUE {
                                                        expression,
                                                        pattern,
                                                        is_lazy    => FALSE
                                                    },
                                                    (patternleft, expressionright)
                                                )
                                            ]
                                        
);
 } );
 ( lr_table::NONTERM 70,  ( result,  pattern1left,  expression1right),  rest671);
 } 
;  ( 308,  ( ( _,  ( values::QQ_FIELDS fields2,  _,  fields2right)) !  _ !  ( _,  ( values::QQ_FIELDS fields1,  fields1left,  _)) !  rest671)) => {  my  result = values::QQ_FIELDS (fn  _ =  {  my  
fields1 = fields1 ();
 my  fields2 = fields2 ();
 (fields1 @ fields2);
 } );
 ( lr_table::NONTERM 71,  ( result,  fields1left,  fields2right),  rest671);
 } 
;  ( 309,  ( ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_idleft,  lowercase_id1right)) !  ( _,  ( values::QQ_ANYTYPE anytype1,  anytype1left,  anytyperight)) !  rest671)) => {  my  
result = values::QQ_FIELDS (fn  _ =  {  my  (anytype as anytype1) = anytype1 ();
 my  (lowercase_id as lowercase_id1) = lowercase_id1 ();
 (
   [   SOURCE_CODE_REGION_FOR_NAMED_FIELD (
                                                    NAMED_FIELD
                                                      { name => make_label_symbol lowercase_id,
                                                        type => anytype,
                                                        init => NULL
                                                      },
                                                    (lowercase_idleft, anytyperight)
                                                )
                                            ]
                                        
);
 } );
 ( lr_table::NONTERM 71,  ( result,  anytype1left,  lowercase_id1right),  rest671);
 } 
;  ( 310,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  expression1right)) !  _ !  ( _,  ( values::QQ_LOWERCASE_ID lowercase_id1,  lowercase_idleft,  _)) !  ( _,  ( values::QQ_ANYTYPE anytype1,  
anytype1left,  anytyperight)) !  rest671)) => {  my  result = values::QQ_FIELDS (fn  _ =  {  my  (anytype as anytype1) = anytype1 ();
 my  (lowercase_id as lowercase_id1) = lowercase_id1 ();
 my  (
expression as expression1) = expression1 ();
 (
   [   SOURCE_CODE_REGION_FOR_NAMED_FIELD (
                                                    NAMED_FIELD
                                                      { name => make_label_symbol lowercase_id,
                                                        type => anytype,
                                                        init => THE expression
                                                      },
                                                    (lowercase_idleft, anytyperight)
                                                )
                                            ]
                                        
);
 } );
 ( lr_table::NONTERM 71,  ( result,  anytype1left,  expression1right),  rest671);
 } 
;  ( 311,  ( rest671)) => {  my  result = values::QQ_CONSTRAINT (fn  _ =  (NULL));
 ( lr_table::NONTERM 72,  ( result,  default_position,  default_position),  rest671);
 } 
;  ( 312,  ( ( _,  ( values::QQ_ANYTYPE anytype1,  _,  anytype1right)) !  ( _,  ( _,  colon1left,  _)) !  rest671)) => {  my  result = values::QQ_CONSTRAINT (fn  _ =  {  my  (anytype as anytype1) = 
anytype1 ();
 (THE anytype);
 } );
 ( lr_table::NONTERM 72,  ( result,  colon1left,  anytype1right),  rest671);
 } 
;  ( 313,  ( ( _,  ( values::QQ_RVB rvb2,  _,  rvb2right)) !  _ !  ( _,  ( values::QQ_RVB rvb1,  rvb1left,  _)) !  rest671)) => {  my  result = values::QQ_RVB (fn  _ =  {  my  rvb1 = rvb1 ();
 my  
rvb2 = rvb2 ();
 (rvb1 @ rvb2);
 } );
 ( lr_table::NONTERM 73,  ( result,  rvb1left,  rvb2right),  rest671);
 } 
;  ( 314,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_CONSTRAINT constraint1,  _,  _)) !  ( _,  ( values::QQ_LVALUE_OR_BAR 
lvalue_or_bar1,  (lvalue_or_barleft as lvalue_or_bar1left),  lvalue_or_barright)) !  rest671)) => {  my  result = values::QQ_RVB (fn  _ =  {  my  (lvalue_or_bar as lvalue_or_bar1) = lvalue_or_bar1 ()
;
 my  (constraint as constraint1) = constraint1 ();
 my  (expression as expression1) = expression1 ();
 (
   {   my (variable_symbol, fixity) = make_value_and_fixity_symbols lvalue_or_bar;

                                                [   SOURCE_CODE_REGION_FOR_RECURSIVELY_NAMED_VALUE (
                                                        NAMED_RECURSIVE_VALUE {
                                                            variable_symbol,
                                                            fixity          => THE (fixity, (lvalue_or_barleft, lvalue_or_barright)),
                                                            null_or_type    => constraint,
                                                            expression,
                                                            is_lazy         => FALSE
                                                        },
                                                        (lvalue_or_barleft, expressionright)
                                                    )
                                                ];
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 73,  ( result,  lvalue_or_bar1left,  expression1right),  rest671);
 } 
;  ( 315,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_CONSTRAINT constraint1,  _,  _)) !  ( _,  ( values::PASSIVEOP_ID 
passiveop_id1,  (passiveop_idleft as passiveop_id1left),  _)) !  rest671)) => {  my  result = values::QQ_RVB (fn  _ =  {  my  (passiveop_id as passiveop_id1) = passiveop_id1 ();
 my  (constraint as 
constraint1) = constraint1 ();
 my  (expression as expression1) = expression1 ();
 (
   {   [   SOURCE_CODE_REGION_FOR_RECURSIVELY_NAMED_VALUE (
                                                        NAMED_RECURSIVE_VALUE {
                                                            variable_symbol => make_value_symbol passiveop_id,
                                                            fixity          => NULL,
                                                            null_or_type    => constraint,
                                                            expression,
                                                            is_lazy         => FALSE
                                                        },
                                                        (passiveop_idleft, expressionright)
                                                    )
                                                ];
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 73,  ( result,  passiveop_id1left,  expression1right),  rest671);
 } 
;  ( 316,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_CONSTRAINT constraint1,  _,  _)) !  ( _,  ( values::QQ_LVALUE_OR_BAR 
lvalue_or_bar1,  lvalue_or_barleft,  lvalue_or_barright)) !  ( _,  ( _,  lazy_t1left,  _)) !  rest671)) => {  my  result = values::QQ_RVB (fn  _ =  {  my  (lvalue_or_bar as lvalue_or_bar1) = 
lvalue_or_bar1 ();
 my  (constraint as constraint1) = constraint1 ();
 my  (expression as expression1) = expression1 ();
 (
   {   my (variable_symbol, fixity) = make_value_and_fixity_symbols lvalue_or_bar;

                                                [   SOURCE_CODE_REGION_FOR_RECURSIVELY_NAMED_VALUE (
                                                        NAMED_RECURSIVE_VALUE {
                                                            variable_symbol,
                                                            fixity          => THE (fixity, (lvalue_or_barleft, lvalue_or_barright)),
                                                            null_or_type    => constraint,
                                                            expression,
                                                            is_lazy         => TRUE
                                                        },
                                                        (lvalue_or_barleft, expressionright)
                                                    )
                                                ];
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 73,  ( result,  lazy_t1left,  expression1right),  rest671);
 } 
;  ( 317,  ( ( _,  ( values::QQ_EXPRESSION expression1,  _,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_CONSTRAINT constraint1,  _,  _)) !  ( _,  ( values::PASSIVEOP_ID 
passiveop_id1,  passiveop_idleft,  _)) !  ( _,  ( _,  lazy_t1left,  _)) !  rest671)) => {  my  result = values::QQ_RVB (fn  _ =  {  my  (passiveop_id as passiveop_id1) = passiveop_id1 ();
 my  (
constraint as constraint1) = constraint1 ();
 my  (expression as expression1) = expression1 ();
 (
   {   [   SOURCE_CODE_REGION_FOR_RECURSIVELY_NAMED_VALUE (
                                                        NAMED_RECURSIVE_VALUE {
                                                            variable_symbol => make_value_symbol passiveop_id,
                                                            fixity          => NULL,
                                                            null_or_type    => constraint,
                                                            expression,
                                                            is_lazy         => TRUE
                                                        },
                                                        (passiveop_idleft, expressionright)
                                                    )
                                                ];
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 73,  ( result,  lazy_t1left,  expression1right),  rest671);
 } 
;  ( 318,  ( ( _,  ( values::QQ_EQ_CLAUSE eq_clause1,  eq_clause1left,  eq_clause1right)) !  rest671)) => {  my  result = values::QQ_FUN_CLAUSES (fn  _ =  {  my  (eq_clause as eq_clause1) = eq_clause1
 ();
 ([eq_clause]);
 } );
 ( lr_table::NONTERM 74,  ( result,  eq_clause1left,  eq_clause1right),  rest671);
 } 
;  ( 319,  ( ( _,  ( _,  _,  end_t1right)) !  ( _,  ( values::QQ_DARROW_CLAUSES darrow_clauses1,  _,  _)) !  _ !  ( _,  ( values::QQ_DARROW_CLAUSE darrow_clause1,  darrow_clause1left,  _)) !  rest671)
) => {  my  result = values::QQ_FUN_CLAUSES (fn  _ =  {  my  (darrow_clause as darrow_clause1) = darrow_clause1 ();
 my  (darrow_clauses as darrow_clauses1) = darrow_clauses1 ();
 (
darrow_clause ! darrow_clauses);
 } );
 ( lr_table::NONTERM 74,  ( result,  darrow_clause1left,  end_t1right),  rest671);
 } 
;  ( 320,  ( ( _,  ( _,  _,  semi1right)) !  ( _,  ( values::QQ_DARROW_CLAUSE darrow_clause1,  darrow_clause1left,  _)) !  rest671)) => {  my  result = values::QQ_DARROW_CLAUSES (fn  _ =  {  my  (
darrow_clause as darrow_clause1) = darrow_clause1 ();
 ([darrow_clause]);
 } );
 ( lr_table::NONTERM 75,  ( result,  darrow_clause1left,  semi1right),  rest671);
 } 
;  ( 321,  ( ( _,  ( values::QQ_DARROW_CLAUSES darrow_clauses1,  _,  darrow_clauses1right)) !  _ !  ( _,  ( values::QQ_DARROW_CLAUSE darrow_clause1,  darrow_clause1left,  _)) !  rest671)) => {  my  
result = values::QQ_DARROW_CLAUSES (fn  _ =  {  my  (darrow_clause as darrow_clause1) = darrow_clause1 ();
 my  (darrow_clauses as darrow_clauses1) = darrow_clauses1 ();
 (
darrow_clause ! darrow_clauses);
 } );
 ( lr_table::NONTERM 75,  ( result,  darrow_clause1left,  darrow_clauses1right),  rest671);
 } 
;  ( 322,  ( rest671)) => {  my  result = values::QQ_MAYBE_LAZY (fn  _ =  (FALSE));
 ( lr_table::NONTERM 77,  ( result,  default_position,  default_position),  rest671);
 } 
;  ( 323,  ( ( _,  ( _,  lazy_t1left,  lazy_t1right)) !  rest671)) => {  my  result = values::QQ_MAYBE_LAZY (fn  _ =  (TRUE));
 ( lr_table::NONTERM 77,  ( result,  lazy_t1left,  lazy_t1right),  
rest671);
 } 
;  ( 324,  ( ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  (fun_clausesright as fun_clauses1right))) !  ( _,  ( values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671))
 => {  my  result = values::QQ_FUN_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (fun_clauses as fun_clauses1) = fun_clauses1 ();
 (
 [ SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind =>   PLAIN_FUN, null_or_type => NULL        }, (fun_clausesleft, fun_clausesright)) ]              
);
 } );
 ( lr_table::NONTERM 76,  ( result,  maybe_lazy1left,  fun_clauses1right),  rest671);
 } 
;  ( 325,  ( ( _,  ( values::QQ_FUN_DECLS fun_decls1,  _,  fun_decls1right)) !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  ( 
values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_FUN_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (fun_clauses as 
fun_clauses1) = fun_clauses1 ();
 my  (fun_decls as fun_decls1) = fun_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind =>   PLAIN_FUN, null_or_type => NULL        }, (fun_clausesleft, fun_clausesright)) !     fun_decls
);
 } );
 ( lr_table::NONTERM 76,  ( result,  maybe_lazy1left,  fun_decls1right),  rest671);
 } 
;  ( 326,  ( ( _,  ( values::QQ_METHOD_DECLS method_decls1,  _,  method_decls1right)) !  _ !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  ( 
values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_FUN_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (fun_clauses as 
fun_clauses1) = fun_clauses1 ();
 my  (method_decls as method_decls1) = method_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind =>   PLAIN_FUN, null_or_type => NULL        }, (fun_clausesleft, fun_clausesright)) !  method_decls
);
 } );
 ( lr_table::NONTERM 76,  ( result,  maybe_lazy1left,  method_decls1right),  rest671);
 } 
;  ( 327,  ( ( _,  ( values::QQ_MESSAGE_DECLS message_decls1,  _,  message_decls1right)) !  _ !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  (
 values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_FUN_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (fun_clauses as 
fun_clauses1) = fun_clauses1 ();
 my  (message_decls as message_decls1) = message_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind =>   PLAIN_FUN, null_or_type => NULL        }, (fun_clausesleft, fun_clausesright)) ! message_decls
);
 } );
 ( lr_table::NONTERM 76,  ( result,  maybe_lazy1left,  message_decls1right),  rest671);
 } 
;  ( 328,  ( ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  (fun_clausesright as fun_clauses1right))) !  ( _,  ( values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671))
 => {  my  result = values::QQ_METHOD_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (fun_clauses as fun_clauses1) = fun_clauses1 ();
 (
 [ SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind =>  METHOD_FUN, null_or_type => NULL        }, (fun_clausesleft, fun_clausesright)) ]              
);
 } );
 ( lr_table::NONTERM 78,  ( result,  maybe_lazy1left,  fun_clauses1right),  rest671);
 } 
;  ( 329,  ( ( _,  ( values::QQ_FUN_DECLS fun_decls1,  _,  fun_decls1right)) !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  ( 
values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_METHOD_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (fun_clauses as 
fun_clauses1) = fun_clauses1 ();
 my  (fun_decls as fun_decls1) = fun_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind =>  METHOD_FUN, null_or_type => NULL        }, (fun_clausesleft, fun_clausesright)) !     fun_decls
);
 } );
 ( lr_table::NONTERM 78,  ( result,  maybe_lazy1left,  fun_decls1right),  rest671);
 } 
;  ( 330,  ( ( _,  ( values::QQ_METHOD_DECLS method_decls1,  _,  method_decls1right)) !  _ !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  ( 
values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_METHOD_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (fun_clauses as 
fun_clauses1) = fun_clauses1 ();
 my  (method_decls as method_decls1) = method_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind =>  METHOD_FUN, null_or_type => NULL        }, (fun_clausesleft, fun_clausesright)) !  method_decls
);
 } );
 ( lr_table::NONTERM 78,  ( result,  maybe_lazy1left,  method_decls1right),  rest671);
 } 
;  ( 331,  ( ( _,  ( values::QQ_MESSAGE_DECLS message_decls1,  _,  message_decls1right)) !  _ !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  (
 values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_METHOD_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (fun_clauses as 
fun_clauses1) = fun_clauses1 ();
 my  (message_decls as message_decls1) = message_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind =>  METHOD_FUN, null_or_type => NULL        }, (fun_clausesleft, fun_clausesright)) ! message_decls
);
 } );
 ( lr_table::NONTERM 78,  ( result,  maybe_lazy1left,  message_decls1right),  rest671);
 } 
;  ( 332,  ( ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  (fun_clausesright as fun_clauses1right))) !  ( _,  ( values::QQ_ANYTYPE anytype1,  _,  _)) !  ( _,  ( values::QQ_MAYBE_LAZY
 maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_MESSAGE_DECLS (fn  _ =  {  my  (maybe_lazy as maybe_lazy1) = maybe_lazy1 ();
 my  (anytype as anytype1) = anytype1 ();

 my  (fun_clauses as fun_clauses1) = fun_clauses1 ();
 (
 [ SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind => MESSAGE_FUN, null_or_type => THE anytype }, (fun_clausesleft, fun_clausesright)) ]              
);
 } );
 ( lr_table::NONTERM 79,  ( result,  maybe_lazy1left,  fun_clauses1right),  rest671);
 } 
;  ( 333,  ( ( _,  ( values::QQ_FUN_DECLS fun_decls1,  _,  fun_decls1right)) !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  ( 
values::QQ_ANYTYPE anytype1,  _,  _)) !  ( _,  ( values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_MESSAGE_DECLS (fn  _ =  {  my  (maybe_lazy as 
maybe_lazy1) = maybe_lazy1 ();
 my  (anytype as anytype1) = anytype1 ();
 my  (fun_clauses as fun_clauses1) = fun_clauses1 ();
 my  (fun_decls as fun_decls1) = fun_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind => MESSAGE_FUN, null_or_type => THE anytype }, (fun_clausesleft, fun_clausesright)) !     fun_decls
);
 } );
 ( lr_table::NONTERM 79,  ( result,  maybe_lazy1left,  fun_decls1right),  rest671);
 } 
;  ( 334,  ( ( _,  ( values::QQ_METHOD_DECLS method_decls1,  _,  method_decls1right)) !  _ !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  ( 
values::QQ_ANYTYPE anytype1,  _,  _)) !  ( _,  ( values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_MESSAGE_DECLS (fn  _ =  {  my  (maybe_lazy as 
maybe_lazy1) = maybe_lazy1 ();
 my  (anytype as anytype1) = anytype1 ();
 my  (fun_clauses as fun_clauses1) = fun_clauses1 ();
 my  (method_decls as method_decls1) = method_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind => MESSAGE_FUN, null_or_type => THE anytype }, (fun_clausesleft, fun_clausesright)) !  method_decls
);
 } );
 ( lr_table::NONTERM 79,  ( result,  maybe_lazy1left,  method_decls1right),  rest671);
 } 
;  ( 335,  ( ( _,  ( values::QQ_MESSAGE_DECLS message_decls1,  _,  message_decls1right)) !  _ !  _ !  _ !  ( _,  ( values::QQ_FUN_CLAUSES fun_clauses1,  fun_clausesleft,  fun_clausesright)) !  ( _,  (
 values::QQ_ANYTYPE anytype1,  _,  _)) !  ( _,  ( values::QQ_MAYBE_LAZY maybe_lazy1,  maybe_lazy1left,  _)) !  rest671)) => {  my  result = values::QQ_MESSAGE_DECLS (fn  _ =  {  my  (maybe_lazy as 
maybe_lazy1) = maybe_lazy1 ();
 my  (anytype as anytype1) = anytype1 ();
 my  (fun_clauses as fun_clauses1) = fun_clauses1 ();
 my  (message_decls as message_decls1) = message_decls1 ();
 (
   SOURCE_CODE_REGION_FOR_NAMED_FUNCTION (NAMED_FUNCTION { pattern_clauses => fun_clauses, is_lazy => maybe_lazy, kind => MESSAGE_FUN, null_or_type => THE anytype }, (fun_clausesleft, fun_clausesright)) ! message_decls
);
 } );
 ( lr_table::NONTERM 79,  ( result,  maybe_lazy1left,  message_decls1right),  rest671);
 } 
;  ( 336,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_CONSTRAINT constraint1,  _,  _)) !  ( _,  ( 
values::QQ_FUN_APATS fun_apats1,  fun_apats1left,  _)) !  rest671)) => {  my  result = values::QQ_EQ_CLAUSE (fn  _ =  {  my  (fun_apats as fun_apats1) = fun_apats1 ();
 my  (constraint as constraint1)
 = constraint1 ();
 my  (expression as expression1) = expression1 ();
 (
   PATTERN_CLAUSE {
                                                patterns    => fun_apats,
                                                result_type => constraint,
                                                expression  => mark_expression (expression, expressionleft, expressionright)
                                            }
                                        );
 } );
 ( 
lr_table::NONTERM 82,  ( result,  fun_apats1left,  expression1right),  rest671);
 } 
;  ( 337,  ( ( _,  ( values::QQ_EXPRESSION expression1,  expressionleft,  (expressionright as expression1right))) !  _ !  ( _,  ( values::QQ_CONSTRAINT constraint1,  _,  _)) !  ( _,  ( 
values::QQ_FUN_APATS fun_apats1,  fun_apats1left,  _)) !  rest671)) => {  my  result = values::QQ_DARROW_CLAUSE (fn  _ =  {  my  (fun_apats as fun_apats1) = fun_apats1 ();
 my  (constraint as 
constraint1) = constraint1 ();
 my  (expression as expression1) = expression1 ();
 (
   PATTERN_CLAUSE {
                                                patterns    => fun_apats,
                                                result_type => constraint,
                                                expression  => mark_expression (expression, expressionleft, expressionright)
                                            }
                                        );
 } );
 ( 
lr_table::NONTERM 83,  ( result,  fun_apats1left,  expression1right),  rest671);
 } 
;  ( 338,  ( ( _,  ( values::QQ_FUN_APAT fun_apat1,  fun_apat1left,  fun_apat1right)) !  rest671)) => {  my  result = values::QQ_FUN_APATS (fn  _ =  {  my  (fun_apat as fun_apat1) = fun_apat1 ();
 (
 [ fun_apat ] );
 } );
 ( lr_table::NONTERM 81,  ( result,  fun_apat1left,  fun_apat1right),  rest671);
 } 
;  ( 339,  ( ( _,  ( values::QQ_FUN_APATS fun_apats1,  _,  fun_apats1right)) !  ( _,  ( values::QQ_FUN_APAT fun_apat1,  fun_apat1left,  _)) !  rest671)) => {  my  result = values::QQ_FUN_APATS (fn  _
 =  {  my  (fun_apat as fun_apat1) = fun_apat1 ();
 my  (fun_apats as fun_apats1) = fun_apats1 ();
 (   fun_apat ! fun_apats);
 } );
 ( lr_table::NONTERM 81,  ( result,  fun_apat1left,  
fun_apats1right),  rest671);
 } 
;  ( 340,  ( ( _,  ( values::QQ_POSTFIX_OP postfix_op1,  postfix_opleft,  (postfix_opright as postfix_op1right))) !  ( _,  ( values::QQ_FUN_APATS fun_apats1,  fun_apats1left,  _)) !  rest671)) => { 
 my  result = values::QQ_FUN_APATS (fn  _ =  {  my  (fun_apats as fun_apats1) = fun_apats1 ();
 my  (postfix_op as postfix_op1) = postfix_op1 ();
 (
   {   p_op = {   item                => VARIABLE_IN_PATTERN [make_value_symbol postfix_op], 
                                                           source_code_region => (postfix_opleft, postfix_opright),
                                                           fixity             => NULL
                                                       };

                                                p_op ! fun_apats;
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 81,  ( result,  fun_apats1left,  postfix_op1right),  rest671);
 } 
;  ( 341,  ( ( _,  ( _,  _,  (post_barright as post_bar1right))) !  ( _,  ( values::QQ_FUN_APATS fun_apats1,  _,  _)) !  ( _,  ( _,  (pre_barleft as pre_bar1left),  _)) !  rest671)) => {  my  result =
 values::QQ_FUN_APATS (fn  _ =  {  my  (fun_apats as fun_apats1) = fun_apats1 ();
 (
   {   p_op = {   item                => VARIABLE_IN_PATTERN [ make_value_symbol' "|_|" ], 
                                                           source_code_region => (pre_barleft, post_barright),
                                                           fixity             => NULL
                                                       };

                                                p_op ! fun_apats;
                                            }
                                        
);
 } );
 ( lr_table::NONTERM 81,  ( result,  pre_