diff options
Diffstat (limited to 'test/racc/regress')
-rw-r--r-- | test/racc/regress/README.txt | 7 | ||||
-rw-r--r-- | test/racc/regress/cadenza | 796 | ||||
-rw-r--r-- | test/racc/regress/cast | 3945 | ||||
-rw-r--r-- | test/racc/regress/csspool | 2314 | ||||
-rw-r--r-- | test/racc/regress/edtf | 1794 | ||||
-rw-r--r-- | test/racc/regress/huia | 1681 | ||||
-rw-r--r-- | test/racc/regress/journey | 222 | ||||
-rw-r--r-- | test/racc/regress/liquor | 885 | ||||
-rw-r--r-- | test/racc/regress/machete | 833 | ||||
-rw-r--r-- | test/racc/regress/mediacloth | 1463 | ||||
-rw-r--r-- | test/racc/regress/mof | 1368 | ||||
-rw-r--r-- | test/racc/regress/namae | 634 | ||||
-rw-r--r-- | test/racc/regress/nasl | 2548 | ||||
-rw-r--r-- | test/racc/regress/nokogiri-css | 836 | ||||
-rw-r--r-- | test/racc/regress/opal | 10107 | ||||
-rw-r--r-- | test/racc/regress/php_serialization | 336 | ||||
-rw-r--r-- | test/racc/regress/riml | 4037 | ||||
-rw-r--r-- | test/racc/regress/ruby18 | 9945 | ||||
-rw-r--r-- | test/racc/regress/ruby22 | 11180 | ||||
-rw-r--r-- | test/racc/regress/tp_plus | 1933 | ||||
-rw-r--r-- | test/racc/regress/twowaysql | 556 |
21 files changed, 0 insertions, 57420 deletions
diff --git a/test/racc/regress/README.txt b/test/racc/regress/README.txt deleted file mode 100644 index dcab73260d..0000000000 --- a/test/racc/regress/README.txt +++ /dev/null @@ -1,7 +0,0 @@ -These files are "known-good" compiler output, generated from a stable version of -Racc. Whenever Racc is refactored, or changes are made which should not affect the -compiler output, running "rake test" checks that the compiler output is exactly -the same as these files. - -If a change is made which *should* change the compiler output, these files will -have to be regenerated from the source in test/assets, and the results committed. diff --git a/test/racc/regress/cadenza b/test/racc/regress/cadenza deleted file mode 100644 index dafce3c9f3..0000000000 --- a/test/racc/regress/cadenza +++ /dev/null @@ -1,796 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - -# racc_parser.rb : generated by racc - -module Cadenza - class RaccParser < Racc::Parser - -module_eval(<<'...end cadenza.y/module_eval...', 'cadenza.y', 171) - -...end cadenza.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 37, 89, 65, 66, 20, 21, 22, 23, 24, 17, - 106, 37, 3, 76, 4, 3, 75, 4, 50, 37, - 29, 68, 65, 66, 33, 67, 34, 110, 9, 74, - 35, 9, 37, 36, 71, 33, 38, 34, 77, 78, - 79, 35, 72, 33, 36, 34, 37, 38, 3, 35, - 39, 83, 36, 54, 55, 38, 33, 89, 34, 37, - 90, 3, 35, 43, 9, 36, 85, 103, 38, 108, - 33, 109, 34, 56, 57, 111, 35, 9, 3, 36, - 46, 122, 38, 33, 112, 34, 113, 78, 79, 35, - 114, 3, 36, 4, 9, 38, 20, 21, 22, 23, - 24, 20, 21, 22, 23, 24, 115, 9, 65, 66, - 65, 66, 29, 54, 55, 120, 107, 29, 20, 21, - 22, 23, 24, 20, 21, 22, 23, 24, 20, 21, - 22, 23, 24, 3, 29, 39, 3, 121, 4, 29, - 3, 3, 43, 46, 29, 3, 124, 87, 125, 9, - 54, 55, 9, 56, 57, 128, 9, 9, 3, 103, - 116, 9, 20, 21, 22, 23, 24, 20, 21, 22, - 23, 24, 131, 3, 9, 116, 56, 57, 29, 3, - 89, 116, nil, 29, 20, 21, 22, 23, 24, 9, - 20, 21, 22, 23, 24, 9, 56, 57, 56, 57, - 29, 20, 21, 22, 23, 24, 29, 58, 59, 60, - 61, 62, 63, 56, 57, 56, 57, 29, 58, 59, - 60, 61, 62, 63, 20, 21, 22, 23, 24, 20, - 21, 22, 23, 24, 20, 21, 22, 23, 24, 20, - 21, 22, 23, 24, 20, 21, 22, 23, 24, 20, - 21, 22, 23, 24, 20, 21, 22, 23, 24, 20, - 21, 22, 23, 24, 20, 21, 22, 23, 24, 20, - 21, 22, 23, 24, 20, 21, 22, 23, 24, 65, - 66 ] - -racc_action_check = [ - 4, 73, 69, 69, 37, 37, 37, 37, 37, 1, - 69, 39, 0, 38, 0, 2, 38, 2, 17, 43, - 37, 32, 31, 31, 4, 31, 4, 73, 0, 37, - 4, 2, 46, 4, 35, 39, 4, 39, 39, 39, - 39, 39, 36, 43, 39, 43, 87, 39, 5, 43, - 5, 43, 43, 26, 26, 43, 46, 52, 46, 116, - 53, 6, 46, 6, 5, 46, 46, 67, 46, 71, - 87, 72, 87, 27, 27, 75, 87, 6, 7, 87, - 7, 87, 87, 116, 76, 116, 77, 116, 116, 116, - 78, 8, 116, 8, 7, 116, 3, 3, 3, 3, - 3, 20, 20, 20, 20, 20, 79, 8, 70, 70, - 51, 51, 3, 93, 93, 83, 70, 20, 24, 24, - 24, 24, 24, 33, 33, 33, 33, 33, 34, 34, - 34, 34, 34, 41, 24, 41, 42, 85, 42, 33, - 45, 48, 45, 48, 34, 49, 103, 49, 105, 41, - 94, 94, 42, 95, 95, 122, 45, 48, 81, 125, - 81, 49, 65, 65, 65, 65, 65, 66, 66, 66, - 66, 66, 126, 82, 81, 82, 96, 96, 65, 118, - 129, 118, nil, 66, 89, 89, 89, 89, 89, 82, - 108, 108, 108, 108, 108, 118, 97, 97, 98, 98, - 89, 124, 124, 124, 124, 124, 108, 28, 28, 28, - 28, 28, 28, 99, 99, 100, 100, 124, 64, 64, - 64, 64, 64, 64, 29, 29, 29, 29, 29, 54, - 54, 54, 54, 54, 55, 55, 55, 55, 55, 56, - 56, 56, 56, 56, 57, 57, 57, 57, 57, 58, - 58, 58, 58, 58, 59, 59, 59, 59, 59, 60, - 60, 60, 60, 60, 61, 61, 61, 61, 61, 62, - 62, 62, 62, 62, 63, 63, 63, 63, 63, 123, - 123 ] - -racc_action_pointer = [ - -12, 9, -9, 93, -3, 24, 37, 54, 67, nil, - nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, - 98, nil, nil, nil, 115, nil, 44, 62, 194, 221, - nil, 2, -4, 120, 125, 31, 39, 1, 10, 8, - nil, 109, 112, 16, nil, 116, 29, nil, 117, 121, - nil, 90, 55, 52, 226, 231, 236, 241, 246, 251, - 256, 261, 266, 271, 205, 159, 164, 64, nil, -18, - 88, 35, 43, -1, nil, 47, 56, 58, 62, 78, - nil, 134, 149, 87, nil, 109, nil, 43, nil, 181, - nil, nil, nil, 104, 141, 142, 165, 185, 187, 202, - 204, nil, nil, 124, nil, 125, nil, nil, 187, nil, - nil, nil, nil, nil, nil, nil, 56, nil, 155, nil, - nil, nil, 127, 259, 198, 156, 144, nil, nil, 178, - nil, nil ] - -racc_action_default = [ - -2, -70, -1, -70, -70, -70, -70, -70, -70, -60, - -61, -62, -63, -64, -65, -66, -68, -70, -67, -69, - -5, -7, -8, -9, -70, -11, -14, -17, -24, -70, - -26, -33, -70, -70, -70, -70, -70, -70, -70, -70, - -41, -70, -70, -70, -48, -70, -70, -52, -70, -70, - 132, -3, -6, -70, -70, -70, -70, -70, -70, -70, - -70, -70, -70, -70, -25, -70, -70, -70, -35, -70, - -70, -70, -70, -70, -54, -70, -70, -70, -70, -70, - -42, -70, -70, -70, -49, -70, -53, -70, -57, -70, - -10, -12, -13, -15, -16, -18, -19, -20, -21, -22, - -23, -27, -28, -29, -31, -34, -36, -37, -70, -50, - -55, -58, -59, -38, -39, -40, -70, -44, -70, -43, - -47, -51, -70, -4, -70, -70, -70, -45, -56, -30, - -32, -46 ] - -racc_goto_table = [ - 19, 40, 18, 32, 104, 52, 51, 1, 2, 64, - 47, 91, 92, 41, 45, 48, 49, 44, 42, 69, - 70, 105, 73, 51, 53, 95, 96, 97, 98, 99, - 100, 93, 94, 101, 102, 88, nil, 80, nil, 19, - nil, 18, nil, 19, nil, 18, 19, 19, 18, 18, - 82, 86, nil, nil, 81, nil, 84, nil, nil, nil, - nil, nil, 130, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 123, nil, 117, 119, nil, - 19, nil, 18, nil, nil, nil, nil, nil, nil, 118, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 126, 129, - 51, nil, nil, nil, 127, nil, 19, nil, 18 ] - -racc_goto_check = [ - 27, 16, 28, 6, 11, 3, 4, 1, 2, 9, - 22, 5, 5, 2, 2, 2, 2, 19, 15, 4, - 4, 12, 3, 4, 6, 8, 8, 8, 8, 8, - 8, 7, 7, 10, 10, 25, nil, 16, nil, 27, - nil, 28, nil, 27, nil, 28, 27, 27, 28, 28, - 2, 22, nil, nil, 15, nil, 19, nil, nil, nil, - nil, nil, 11, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 4, nil, 16, 16, nil, - 27, nil, 28, nil, nil, nil, nil, nil, nil, 2, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 6, 3, - 4, nil, nil, nil, 16, nil, 27, nil, 28 ] - -racc_goto_pointer = [ - nil, 7, 8, -15, -14, -43, 0, -25, -33, -20, - -32, -63, -46, nil, nil, 13, -4, nil, nil, 11, - nil, nil, 3, nil, nil, -14, nil, -2, 0 ] - -racc_goto_default = [ - nil, nil, nil, nil, 31, 25, nil, 26, 27, 28, - 30, nil, nil, 10, 5, nil, nil, 11, 6, nil, - 12, 7, nil, 14, 8, nil, 13, 16, 15 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 42, :_reduce_none, - 0, 42, :_reduce_2, - 1, 44, :_reduce_3, - 3, 44, :_reduce_4, - 1, 46, :_reduce_5, - 2, 46, :_reduce_6, - 1, 46, :_reduce_7, - 1, 46, :_reduce_8, - 1, 46, :_reduce_9, - 3, 46, :_reduce_10, - 1, 48, :_reduce_none, - 3, 48, :_reduce_12, - 3, 48, :_reduce_13, - 1, 49, :_reduce_none, - 3, 49, :_reduce_15, - 3, 49, :_reduce_16, - 1, 50, :_reduce_none, - 3, 50, :_reduce_18, - 3, 50, :_reduce_19, - 3, 50, :_reduce_20, - 3, 50, :_reduce_21, - 3, 50, :_reduce_22, - 3, 50, :_reduce_23, - 1, 51, :_reduce_none, - 2, 51, :_reduce_25, - 1, 45, :_reduce_none, - 3, 45, :_reduce_27, - 3, 45, :_reduce_28, - 1, 52, :_reduce_29, - 3, 52, :_reduce_30, - 1, 53, :_reduce_31, - 3, 53, :_reduce_32, - 1, 47, :_reduce_none, - 3, 47, :_reduce_34, - 3, 54, :_reduce_35, - 4, 55, :_reduce_36, - 4, 55, :_reduce_37, - 3, 56, :_reduce_38, - 3, 57, :_reduce_39, - 3, 57, :_reduce_40, - 2, 58, :_reduce_41, - 3, 58, :_reduce_42, - 4, 58, :_reduce_43, - 4, 58, :_reduce_44, - 5, 58, :_reduce_45, - 6, 59, :_reduce_46, - 3, 60, :_reduce_47, - 2, 61, :_reduce_48, - 3, 61, :_reduce_49, - 4, 62, :_reduce_50, - 3, 63, :_reduce_51, - 2, 64, :_reduce_52, - 3, 64, :_reduce_53, - 3, 65, :_reduce_54, - 4, 65, :_reduce_55, - 3, 66, :_reduce_56, - 3, 67, :_reduce_57, - 4, 68, :_reduce_58, - 4, 68, :_reduce_59, - 1, 69, :_reduce_60, - 1, 69, :_reduce_none, - 1, 69, :_reduce_none, - 1, 69, :_reduce_none, - 1, 69, :_reduce_none, - 1, 69, :_reduce_none, - 1, 43, :_reduce_66, - 2, 43, :_reduce_67, - 1, 43, :_reduce_68, - 2, 43, :_reduce_69 ] - -racc_reduce_n = 70 - -racc_shift_n = 132 - -racc_token_table = { - false => 0, - :error => 1, - "," => 2, - :IDENTIFIER => 3, - :INTEGER => 4, - :REAL => 5, - :STRING => 6, - "(" => 7, - ")" => 8, - "*" => 9, - "/" => 10, - "+" => 11, - "-" => 12, - :OP_EQ => 13, - :OP_NEQ => 14, - :OP_LEQ => 15, - :OP_GEQ => 16, - ">" => 17, - "<" => 18, - :NOT => 19, - :AND => 20, - :OR => 21, - ":" => 22, - "|" => 23, - :VAR_OPEN => 24, - :VAR_CLOSE => 25, - :STMT_OPEN => 26, - :IF => 27, - :STMT_CLOSE => 28, - :UNLESS => 29, - :ELSE => 30, - :ENDIF => 31, - :ENDUNLESS => 32, - :FOR => 33, - :IN => 34, - :ENDFOR => 35, - :BLOCK => 36, - :ENDBLOCK => 37, - :END => 38, - :EXTENDS => 39, - :TEXT_BLOCK => 40 } - -racc_nt_base = 41 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "\",\"", - "IDENTIFIER", - "INTEGER", - "REAL", - "STRING", - "\"(\"", - "\")\"", - "\"*\"", - "\"/\"", - "\"+\"", - "\"-\"", - "OP_EQ", - "OP_NEQ", - "OP_LEQ", - "OP_GEQ", - "\">\"", - "\"<\"", - "NOT", - "AND", - "OR", - "\":\"", - "\"|\"", - "VAR_OPEN", - "VAR_CLOSE", - "STMT_OPEN", - "IF", - "STMT_CLOSE", - "UNLESS", - "ELSE", - "ENDIF", - "ENDUNLESS", - "FOR", - "IN", - "ENDFOR", - "BLOCK", - "ENDBLOCK", - "END", - "EXTENDS", - "TEXT_BLOCK", - "$start", - "target", - "document", - "parameter_list", - "logical_expression", - "primary_expression", - "filtered_expression", - "multiplicative_expression", - "additive_expression", - "boolean_expression", - "inverse_expression", - "filter", - "filter_list", - "inject_statement", - "if_tag", - "else_tag", - "end_if_tag", - "if_block", - "for_tag", - "end_for_tag", - "for_block", - "block_tag", - "end_block_tag", - "block_block", - "generic_block_tag", - "end_generic_block_tag", - "generic_block", - "extends_statement", - "document_component" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -# reduce 1 omitted - -module_eval(<<'.,.,', 'cadenza.y', 12) - def _reduce_2(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 16) - def _reduce_3(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 17) - def _reduce_4(val, _values, result) - result = val[0].push(val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 22) - def _reduce_5(val, _values, result) - result = VariableNode.new(val[0].value) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 23) - def _reduce_6(val, _values, result) - result = VariableNode.new(val[0].value, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 24) - def _reduce_7(val, _values, result) - result = ConstantNode.new(val[0].value) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 25) - def _reduce_8(val, _values, result) - result = ConstantNode.new(val[0].value) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 26) - def _reduce_9(val, _values, result) - result = ConstantNode.new(val[0].value) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 27) - def _reduce_10(val, _values, result) - result = val[1] - result - end -.,., - -# reduce 11 omitted - -module_eval(<<'.,.,', 'cadenza.y', 32) - def _reduce_12(val, _values, result) - result = OperationNode.new(val[0], "*", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 33) - def _reduce_13(val, _values, result) - result = OperationNode.new(val[0], "/", val[2]) - result - end -.,., - -# reduce 14 omitted - -module_eval(<<'.,.,', 'cadenza.y', 38) - def _reduce_15(val, _values, result) - result = OperationNode.new(val[0], "+", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 39) - def _reduce_16(val, _values, result) - result = OperationNode.new(val[0], "-", val[2]) - result - end -.,., - -# reduce 17 omitted - -module_eval(<<'.,.,', 'cadenza.y', 44) - def _reduce_18(val, _values, result) - result = OperationNode.new(val[0], "==", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 45) - def _reduce_19(val, _values, result) - result = OperationNode.new(val[0], "!=", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 46) - def _reduce_20(val, _values, result) - result = OperationNode.new(val[0], "<=", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 47) - def _reduce_21(val, _values, result) - result = OperationNode.new(val[0], ">=", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 48) - def _reduce_22(val, _values, result) - result = OperationNode.new(val[0], ">", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 49) - def _reduce_23(val, _values, result) - result = OperationNode.new(val[0], "<", val[2]) - result - end -.,., - -# reduce 24 omitted - -module_eval(<<'.,.,', 'cadenza.y', 54) - def _reduce_25(val, _values, result) - result = BooleanInverseNode.new(val[1]) - result - end -.,., - -# reduce 26 omitted - -module_eval(<<'.,.,', 'cadenza.y', 59) - def _reduce_27(val, _values, result) - result = OperationNode.new(val[0], "and", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 60) - def _reduce_28(val, _values, result) - result = OperationNode.new(val[0], "or", val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 64) - def _reduce_29(val, _values, result) - result = FilterNode.new(val[0].value) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 65) - def _reduce_30(val, _values, result) - result = FilterNode.new(val[0].value, val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 69) - def _reduce_31(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 70) - def _reduce_32(val, _values, result) - result = val[0].push(val[2]) - result - end -.,., - -# reduce 33 omitted - -module_eval(<<'.,.,', 'cadenza.y', 75) - def _reduce_34(val, _values, result) - result = FilteredValueNode.new(val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 79) - def _reduce_35(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 83) - def _reduce_36(val, _values, result) - open_scope!; result = val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 84) - def _reduce_37(val, _values, result) - open_scope!; result = BooleanInverseNode.new(val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 88) - def _reduce_38(val, _values, result) - result = close_scope!; open_scope! - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 92) - def _reduce_39(val, _values, result) - result = close_scope! - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 93) - def _reduce_40(val, _values, result) - result = close_scope! - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 97) - def _reduce_41(val, _values, result) - result = IfNode.new(val[0], val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 98) - def _reduce_42(val, _values, result) - result = IfNode.new(val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 99) - def _reduce_43(val, _values, result) - result = IfNode.new(val[0], val[1], val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 100) - def _reduce_44(val, _values, result) - result = IfNode.new(val[0], val[2], val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 101) - def _reduce_45(val, _values, result) - result = IfNode.new(val[0], val[2], val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 105) - def _reduce_46(val, _values, result) - open_scope!; result = [val[2].value, val[4]] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 109) - def _reduce_47(val, _values, result) - result = close_scope! - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 114) - def _reduce_48(val, _values, result) - result = ForNode.new(VariableNode.new(val[0].first), val[0].last, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 115) - def _reduce_49(val, _values, result) - result = ForNode.new(VariableNode.new(val[0].first), val[0].last, val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 119) - def _reduce_50(val, _values, result) - result = open_block_scope!(val[2].value) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 123) - def _reduce_51(val, _values, result) - result = close_block_scope! - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 128) - def _reduce_52(val, _values, result) - result = BlockNode.new(val[0], val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 129) - def _reduce_53(val, _values, result) - result = BlockNode.new(val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 133) - def _reduce_54(val, _values, result) - open_scope!; result = [val[1].value, []] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 134) - def _reduce_55(val, _values, result) - open_scope!; result = [val[1].value, val[2]] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 138) - def _reduce_56(val, _values, result) - result = close_scope! - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 142) - def _reduce_57(val, _values, result) - result = GenericBlockNode.new(val[0].first, val[2], val[0].last) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 146) - def _reduce_58(val, _values, result) - result = val[2].value - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 147) - def _reduce_59(val, _values, result) - result = VariableNode.new(val[2].value) - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 151) - def _reduce_60(val, _values, result) - result = TextNode.new(val[0].value) - result - end -.,., - -# reduce 61 omitted - -# reduce 62 omitted - -# reduce 63 omitted - -# reduce 64 omitted - -# reduce 65 omitted - -module_eval(<<'.,.,', 'cadenza.y', 160) - def _reduce_66(val, _values, result) - push val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 161) - def _reduce_67(val, _values, result) - push val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 162) - def _reduce_68(val, _values, result) - document.extends = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cadenza.y', 163) - def _reduce_69(val, _values, result) - document.extends = val[1] - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class RaccParser -end # module Cadenza diff --git a/test/racc/regress/cast b/test/racc/regress/cast deleted file mode 100644 index 60e92a0abd..0000000000 --- a/test/racc/regress/cast +++ /dev/null @@ -1,3945 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.2 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - - -require 'set' - -# Error classes -module C - class ParseError < StandardError; end -end - -# Local variables: -# mode: ruby -# end: -module C - class Parser < Racc::Parser - -module_eval(<<'...end cast.y/module_eval...', 'cast.y', 564) - # A.1.9 -- Preprocessing numbers -- skip - # A.1.8 -- Header names -- skip - - # A.1.7 -- Puncuators -- we don't bother with {##,#,%:,%:%:} since - # we don't do preprocessing - @@punctuators = %r'\+\+|-[->]|&&|\|\||\.\.\.|(?:<<|>>|[<>=!*/%+\-&^|])=?|[\[\](){}.~?:;,]' - @@digraphs = %r'<[:%]|[:%]>' - - # A.1.6 -- String Literals -- simple for us because we don't decode - # the string (and indeed accept some illegal strings) - @@string_literal = %r'L?"(?:[^\\]|\\.)*?"'m - - # A.1.5 -- Constants - @@decimal_floating_constant = %r'(?:(?:\d*\.\d+|\d+\.)(?:e[-+]?\d+)?|\d+e[-+]?\d+)[fl]?'i - @@hexadecimal_floating_constant = %r'0x(?:(?:[0-9a-f]*\.[0-9a-f]+|[0-9a-f]+\.)|[0-9a-f]+)p[-+]?\d+[fl]?'i - - @@integer_constant = %r'(?:[1-9][0-9]*|0x[0-9a-f]+|0[0-7]*)(?:ul?l?|ll?u?)?'i - @@floating_constant = %r'#{@@decimal_floating_constant}|#{@@hexadecimal_floating_constant}' - @@enumeration_constant = %r'[a-zA-Z_\\][a-zA-Z_\\0-9]*' - @@character_constant = %r"L?'(?:[^\\]|\\.)+?'" - # (note that as with string-literals, we accept some illegal - # character-constants) - - # A.1.4 -- Universal character names -- skip - - # A.1.3 -- Identifiers -- skip, since an identifier is lexically - # identical to an enumeration constant - - # A.1.2 Keywords - keywords = %w'auto break case char const continue default do -double else enum extern float for goto if inline int long register -restrict return short signed sizeof static struct switch typedef union - unsigned void volatile while _Bool _Complex _Imaginary' - @@keywords = %r"#{keywords.join('|')}" - - def initialize - @type_names = ::Set.new - - @warning_proc = lambda{} - @pos = C::Node::Pos.new(nil, 1, 0) - end - def initialize_copy(x) - @pos = x.pos.dup - @type_names = x.type_names.dup - end - attr_accessor :pos, :type_names - - def parse(str) - if str.respond_to? :read - str = str.read - end - @str = str - begin - prepare_lexer(str) - return do_parse - rescue ParseError => e - e.set_backtrace(caller) - raise - end - end - - # - # Error handler, as used by racc. - # - def on_error(error_token_id, error_value, value_stack) - if error_value == '$' - parse_error @pos, "unexpected EOF" - else - parse_error(error_value.pos, - "parse error on #{token_to_str(error_token_id)} (#{error_value.val})") - end - end - - def self.feature(name) - attr_writer "#{name}_enabled" - class_eval <<-EOS - def enable_#{name} - @#{name}_enabled = true - end - def #{name}_enabled? - @#{name}_enabled - end - EOS - end - private_class_method :feature - - # - # Allow blocks in parentheses as expressions, as per the gcc - # extension. [http://rubyurl.com/iB7] - # - feature :block_expressions - - private # --------------------------------------------------------- - - class Token - attr_accessor :pos, :val - def initialize(pos, val) - @pos = pos - @val = val - end - end - def eat(str) - lines = str.split(/\r\n|[\r\n]/, -1) - if lines.length == 1 - @pos.col_num += lines[0].length - else - @pos.line_num += lines.length - 1 - @pos.col_num = lines[-1].length - end - end - - # - # Make a Declaration from the given specs and declarators. - # - def make_declaration(pos, specs, declarators) - specs.all?{|x| x.is_a?(Symbol) || x.is_a?(Type)} or raise specs.map{|x| x.class}.inspect - decl = Declaration.new_at(pos, nil, declarators) - - # set storage class - storage_classes = specs.find_all do |x| - [:typedef, :extern, :static, :auto, :register].include? x - end - # 6.7.1p2: at most, one storage-class specifier may be given in - # the declaration specifiers in a declaration - storage_classes.length <= 1 or - begin - if declarators.length == 0 - for_name = '' - else - for_name = "for `#{declarators[0].name}'" - end - parse_error pos, "multiple or duplicate storage classes given #{for_name}'" - end - decl.storage = storage_classes[0] - - # set type (specifiers, qualifiers) - decl.type = make_direct_type(pos, specs) - - # set function specifiers - decl.inline = specs.include?(:inline) - - # look for new type names - if decl.typedef? - decl.declarators.each do |d| - if d.name - @type_names << d.name - end - end - end - - return decl - end - - def make_function_def(pos, specs, func_declarator, decl_list, defn) - add_decl_type(func_declarator, make_direct_type(pos, specs)) - - # get types from decl_list if necessary - function = func_declarator.indirect_type - function.is_a? Function or - parse_error pos, "non function type for function `#{func_declarator.name}'" - params = function.params - if decl_list - params.all?{|p| p.type.nil?} or - parse_error pos, "both prototype and declaration list given for `#{func_declarator.name}'" - decl_list.each do |declaration| - declaration.declarators.each do |declarator| - param = params.find{|p| p.name == declarator.name} or - parse_error pos, "no parameter named #{declarator.name}" - if declarator.indirect_type - param.type = declarator.indirect_type - param.type.direct_type = declaration.type.dup - else - param.type = declaration.type.dup - end - end - end - params.all?{|p| p.type} or - begin - s = params.find_all{|p| p.type.nil?}.map{|p| "`#{p.name}'"}.join(' and ') - parse_error pos, "types missing for parameters #{s}" - end - end - - fd = FunctionDef.new_at(pos, - function.detach, - func_declarator.name, - defn, - :no_prototype => !decl_list.nil?) - - # set storage class - # 6.9.1p4: only extern or static allowed - specs.each do |s| - [:typedef, :auto, :register].include?(s) and - "`#{s}' illegal for function" - end - storage_classes = specs.find_all do |s| - s == :extern || s == :static - end - # 6.7.1p2: at most, one storage-class specifier may be given in - # the declaration specifiers in a declaration - storage_classes.length <= 1 or - "multiple or duplicate storage classes given for `#{func_declarator.name}'" - fd.storage = storage_classes[0] if storage_classes[0] - - # set function specifiers - # 6.7.4p5 'inline' can be repeated - fd.inline = specs.include?(:inline) - - return fd - end - - # - # Make a direct type from the list of type specifiers and type - # qualifiers. - # - def make_direct_type(pos, specs) - specs_order = [:signed, :unsigned, :short, :long, :double, :void, - :char, :int, :float, :_Bool, :_Complex, :_Imaginary] - - type_specs = specs.find_all do |x| - specs_order.include?(x) || !x.is_a?(Symbol) - end - type_specs.sort! do |a, b| - (specs_order.index(a)||100) <=> (specs_order.index(b)||100) - end - - # set type specifiers - # 6.7.2p2: the specifier list should be one of these - type = - case type_specs - when [:void] - Void.new - when [:char] - Char.new - when [:signed, :char] - Char.new :signed => true - when [:unsigned, :char] - Char.new :signed => false - when [:short], [:signed, :short], [:short, :int], - [:signed, :short, :int] - Int.new :longness => -1 - when [:unsigned, :short], [:unsigned, :short, :int] - Int.new :unsigned => true, :longness => -1 - when [:int], [:signed], [:signed, :int] - Int.new - when [:unsigned], [:unsigned, :int] - Int.new :unsigned => true - when [:long], [:signed, :long], [:long, :int], - [:signed, :long, :int] - Int.new :longness => 1 - when [:unsigned, :long], [:unsigned, :long, :int] - Int.new :longness => 1, :unsigned => true - when [:long, :long], [:signed, :long, :long], - [:long, :long, :int], [:signed, :long, :long, :int] - Int.new :longness => 2 - when [:unsigned, :long, :long], [:unsigned, :long, :long, :int] - Int.new :longness => 2, :unsigned => true - when [:float] - Float.new - when [:double] - Float.new :longness => 1 - when [:long, :double] - Float.new :longness => 2 - when [:_Bool] - Bool.new - when [:float, :_Complex] - Complex.new - when [:double, :_Complex] - Complex.new :longness => 1 - when [:long, :double, :_Complex] - Complex.new :longness => 2 - when [:float, :_Imaginary] - Imaginary.new - when [:double, :_Imaginary] - Imaginary.new :longness => 1 - when [:long, :double, :_Imaginary] - Imaginary.new :longness => 2 - else - if type_specs.length == 1 && - [CustomType, Struct, Union, Enum].any?{|c| type_specs[0].is_a? c} - type_specs[0] - else - if type_specs == [] - parse_error pos, "no type specifiers given" - else - parse_error pos, "invalid type specifier combination: #{type_specs.join(' ')}" - end - end - end - type.pos ||= pos - - # set type qualifiers - # 6.7.3p4: type qualifiers can be repeated - type.const = specs.any?{|x| x.equal? :const } - type.restrict = specs.any?{|x| x.equal? :restrict} - type.volatile = specs.any?{|x| x.equal? :volatile} - - return type - end - - def make_parameter(pos, specs, indirect_type, name) - type = indirect_type - if type - type.direct_type = make_direct_type(pos, specs) - else - type = make_direct_type(pos, specs) - end - [:typedef, :extern, :static, :auto, :inline].each do |sym| - specs.include? sym and - parse_error pos, "parameter `#{declarator.name}' declared `#{sym}'" - end - return Parameter.new_at(pos, type, name, - :register => specs.include?(:register)) - end - - def add_type_quals(type, quals) - type.const = quals.include?(:const ) - type.restrict = quals.include?(:restrict) - type.volatile = quals.include?(:volatile) - return type - end - - # - # Add te given type as the "most direct" type to the given - # declarator. Return the declarator. - # - def add_decl_type(declarator, type) - if declarator.indirect_type - declarator.indirect_type.direct_type = type - else - declarator.indirect_type = type - end - return declarator - end - - def param_list(params, var_args) - if params.length == 1 && - params[0].type.is_a?(Void) && - params[0].name.nil? - return NodeArray[] - elsif params.empty? - return nil - else - return params - end - end - - def parse_error(pos, str) - raise ParseError, "#{pos}: #{str}" - end - -...end cast.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 99, 100, 65, 103, 108, 109, 120, 312, 61, 110, - 111, 112, 113, 114, 115, 116, 117, 77, 48, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 31, 32, 33, 34, - 35, 36, 37, 72, 281, 128, 49, 38, 196, 391, - 123, 124, 126, 127, 129, 130, 131, 132, 183, 277, - 83, 273, 84, 238, 288, 293, 88, 196, 72, 290, - 38, 274, 184, 372, 373, 386, 239, 240, 289, 294, - 71, 241, 242, 50, 147, 148, 149, 150, 99, 100, - 65, 193, 108, 109, 120, 50, 281, 110, 111, 112, - 113, 114, 115, 116, 117, 71, 50, 10, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, - 37, 56, 366, 128, 89, 38, 50, 169, 123, 124, - 126, 127, 129, 130, 131, 132, 99, 100, 65, 88, - 108, 109, 120, 88, 88, 110, 111, 112, 113, 114, - 115, 116, 117, 346, 349, 238, 59, 68, 48, 365, - 195, 50, 147, 148, 149, 150, 38, 347, 239, 240, - 69, 178, 283, 196, 312, 366, 243, 244, 48, 262, - 88, 128, 185, 38, 263, 284, 123, 124, 126, 127, - 129, 130, 131, 132, 99, 100, 65, 49, 108, 109, - 120, 38, 50, 110, 111, 112, 113, 114, 115, 116, - 117, 281, 365, 309, 440, 249, 250, 49, 238, 50, - 147, 148, 149, 150, 313, 379, 196, 227, 439, 178, - 413, 239, 240, 88, 196, 50, 48, 50, 196, 128, - 187, 38, 191, 196, 123, 124, 126, 127, 129, 130, - 131, 132, 99, 100, 65, 50, 108, 109, 120, 416, - 428, 110, 111, 112, 113, 114, 115, 116, 117, 255, - 256, 192, 196, 196, 197, 49, 198, 50, 147, 148, - 149, 150, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 43, 199, 48, 241, 242, 128, 202, 38, - 241, 242, 123, 124, 126, 127, 129, 130, 131, 132, - 99, 100, 65, 50, 108, 109, 120, 375, 376, 110, - 111, 112, 113, 114, 115, 116, 117, 196, 196, 205, - 377, 387, 427, 49, 433, 50, 147, 148, 149, 150, - 196, 388, 196, 437, 196, 206, 445, 209, 447, 450, - 43, 251, 48, 196, 252, 128, 196, 38, 196, 196, - 123, 124, 126, 127, 129, 130, 131, 132, 99, 100, - 65, 50, 108, 109, 120, 454, 253, 110, 111, 112, - 113, 114, 115, 116, 117, 196, 34, 35, 36, 243, - 244, 49, 49, 50, 147, 148, 149, 150, 34, 35, - 36, 243, 244, 254, 49, 245, 246, 247, 248, 67, - 48, 243, 244, 128, 268, 38, 243, 244, 123, 124, - 126, 127, 129, 130, 131, 132, 99, 100, 65, 50, - 108, 109, 120, 249, 250, 110, 111, 112, 113, 114, - 115, 116, 117, 245, 246, 247, 248, 271, 272, 49, - 275, 50, 147, 148, 149, 150, 245, 246, 247, 248, - 285, 296, 192, 303, 307, 308, 314, 315, 277, 50, - 50, 128, 50, 38, 353, 355, 123, 124, 126, 127, - 129, 130, 131, 132, 99, 100, 65, 50, 108, 109, - 120, 357, 50, 110, 111, 112, 113, 114, 115, 116, - 117, 378, 389, 390, 251, 281, 252, 49, 253, 50, - 147, 148, 149, 150, 254, 395, 396, 397, 398, 399, - 405, 406, 384, 384, 423, 424, 425, 426, 442, 128, - nil, 38, nil, nil, 123, 124, 126, 127, 129, 130, - 131, 132, 99, 100, 65, 50, 108, 109, 120, nil, - nil, 110, 111, 112, 113, 114, 115, 116, 117, nil, - nil, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 128, nil, 38, - nil, nil, 123, 124, 126, 127, 129, 130, 131, 132, - 99, 100, 65, nil, 108, 109, 120, nil, nil, 110, - 111, 112, 113, 114, 115, 116, 117, nil, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 128, nil, 38, nil, nil, - 123, 124, 126, 127, 129, 130, 131, 132, 99, 100, - 65, nil, 108, 109, 120, nil, nil, 110, 111, 112, - 113, 114, 115, 116, 117, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 147, 148, 149, 150, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 128, nil, 38, nil, nil, 123, 124, - 126, 127, 129, 130, 131, 132, 99, 100, 65, nil, - 108, 109, 120, nil, nil, 110, 111, 112, 113, 114, - 115, 116, 117, nil, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 128, nil, 38, nil, nil, 123, 124, 126, 127, - 129, 130, 131, 132, 99, 100, 65, nil, 108, 109, - 120, nil, nil, 110, 111, 112, 113, 114, 115, 116, - 117, nil, nil, nil, nil, nil, nil, nil, nil, 50, - 147, 148, 149, 150, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 128, - nil, 38, nil, nil, 123, 124, 126, 127, 129, 130, - 131, 132, 99, 100, 65, nil, 108, 109, 120, nil, - nil, 110, 111, 112, 113, 114, 115, 116, 117, nil, - nil, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 128, nil, 38, - nil, nil, 123, 124, 126, 127, 129, 130, 131, 132, - 99, 100, 65, nil, 108, 109, 120, nil, nil, 110, - 111, 112, 113, 114, 115, 116, 117, nil, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 128, nil, 38, nil, nil, - 123, 124, 126, 127, 129, 130, 131, 132, 99, 100, - 65, nil, 108, 109, 120, nil, nil, 110, 111, 112, - 113, 114, 115, 116, 117, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 147, 148, 149, 150, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 128, nil, 38, nil, nil, 123, 124, - 126, 127, 129, 130, 131, 132, 99, 100, 65, nil, - 108, 109, 120, nil, nil, 110, 111, 112, 113, 114, - 115, 116, 117, nil, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 128, nil, 38, nil, nil, 123, 124, 126, 127, - 129, 130, 131, 132, 99, 100, 65, nil, 108, 109, - 120, nil, nil, 110, 111, 112, 113, 114, 115, 116, - 117, nil, nil, nil, nil, nil, nil, nil, nil, 50, - 147, 148, 149, 150, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 128, - nil, 38, nil, nil, 123, 124, 126, 127, 129, 130, - 131, 132, 99, 100, 65, nil, 108, 109, 120, nil, - nil, 110, 111, 112, 113, 114, 115, 116, 117, nil, - nil, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 128, nil, 38, - nil, nil, 123, 124, 126, 127, 129, 130, 131, 132, - 99, 100, 65, nil, 108, 109, 120, nil, nil, 110, - 111, 112, 113, 114, 115, 116, 117, nil, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 128, nil, 38, nil, nil, - 123, 124, 126, 127, 129, 130, 131, 132, 99, 100, - 65, nil, 108, 109, 120, nil, nil, 110, 111, 112, - 113, 114, 115, 116, 117, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 147, 148, 149, 150, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 128, nil, 38, nil, nil, 123, 124, - 126, 127, 129, 130, 131, 132, 99, 100, 65, nil, - 108, 109, 120, nil, nil, 110, 111, 112, 113, 114, - 115, 116, 117, 154, nil, nil, nil, 120, nil, nil, - nil, 50, 147, 148, 149, 150, nil, nil, nil, nil, - nil, nil, 215, nil, nil, nil, nil, nil, nil, nil, - nil, 128, nil, 38, nil, nil, 123, 124, 126, 127, - 129, 130, 131, 132, nil, nil, 128, nil, nil, nil, - nil, 123, 124, 126, 127, 129, 130, 131, 132, 214, - nil, nil, nil, nil, 216, 217, 218, 219, nil, 50, - 147, 148, 149, 150, 65, nil, nil, nil, 120, nil, - nil, nil, nil, nil, 50, 147, 148, 149, 150, 154, - nil, nil, nil, 120, nil, nil, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 31, 32, - 33, 34, 35, 36, nil, nil, nil, 128, nil, 38, - nil, nil, 123, 124, 126, 127, 129, 130, 131, 132, - 262, nil, 128, nil, nil, 263, nil, 123, 124, 126, - 127, 129, 130, 131, 132, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - 65, nil, nil, nil, 120, nil, nil, nil, nil, nil, - 50, 147, 148, 149, 150, nil, nil, nil, nil, nil, - nil, nil, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, - nil, nil, nil, 128, nil, 38, nil, nil, 123, 124, - 126, 127, 129, 130, 131, 132, nil, nil, nil, nil, - nil, nil, nil, nil, 65, nil, nil, nil, 120, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 31, 32, - 33, 34, 35, 36, nil, nil, nil, 128, nil, 38, - nil, nil, 123, 124, 126, 127, 129, 130, 131, 132, - 154, nil, nil, nil, 120, nil, nil, nil, nil, nil, - nil, nil, nil, 384, nil, nil, nil, 120, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 128, nil, nil, nil, nil, 123, 124, - 126, 127, 129, 130, 131, 132, 128, nil, nil, nil, - nil, 123, 124, 126, 127, 129, 130, 131, 132, 154, - 392, nil, nil, 120, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, 154, nil, nil, nil, - 120, nil, nil, nil, 50, 147, 148, 149, 150, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 262, nil, 128, nil, nil, 263, nil, 123, 124, 126, - 127, 129, 130, 131, 132, nil, nil, 262, nil, 128, - nil, nil, 263, nil, 123, 124, 126, 127, 129, 130, - 131, 132, 154, nil, nil, nil, 120, nil, nil, nil, - 50, 147, 148, 149, 150, nil, nil, 154, 453, nil, - nil, 120, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 128, nil, nil, nil, nil, - 123, 124, 126, 127, 129, 130, 131, 132, 262, nil, - 128, nil, 208, 263, 120, 123, 124, 126, 127, 129, - 130, 131, 132, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 147, 148, 149, 150, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 50, 147, - 148, 149, 150, 128, nil, nil, nil, nil, 123, 124, - 126, 127, 129, 130, 131, 132, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 305, nil, 120, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 31, 32, 33, 34, 35, 36, 37, - nil, nil, 128, nil, 38, nil, nil, 123, 124, 126, - 127, 129, 130, 131, 132, 381, nil, 120, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 383, nil, - 120, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 50, 147, 148, 149, 150, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 128, nil, nil, nil, - nil, 123, 124, 126, 127, 129, 130, 131, 132, 128, - nil, 412, nil, 120, 123, 124, 126, 127, 129, 130, - 131, 132, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 50, 147, 148, 149, 150, nil, - nil, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, 128, nil, nil, nil, nil, 123, 124, 126, - 127, 129, 130, 131, 132, 120, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 120, nil, - 160, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 50, 147, 148, 149, 150, nil, nil, nil, 34, 35, - 36, nil, nil, 159, 161, nil, nil, nil, nil, 123, - 124, 126, 127, 129, 130, 131, 132, 128, nil, nil, - nil, 220, 123, 124, 126, 127, 129, 130, 131, 132, - nil, nil, nil, nil, 220, nil, nil, nil, nil, nil, - nil, nil, 50, 147, 148, 149, 150, nil, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - 128, nil, nil, nil, nil, 123, 124, 126, 127, 129, - 130, 131, 132, 128, nil, nil, nil, 120, 123, 124, - 126, 127, 129, 130, 131, 132, nil, nil, nil, nil, - 224, nil, nil, nil, nil, nil, nil, nil, 50, 147, - 148, 149, 150, nil, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, 128, nil, nil, nil, - nil, 123, 124, 126, 127, 129, 130, 131, 132, 128, - nil, nil, nil, nil, 123, 124, 126, 127, 129, 130, - 131, 132, nil, nil, 120, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 50, 147, 148, 149, 150, 266, - nil, nil, nil, 120, nil, nil, nil, 50, 147, 148, - 149, 150, nil, nil, nil, nil, nil, 34, 35, 36, - nil, nil, 265, 267, nil, nil, nil, 120, 123, 124, - 126, 127, 129, 130, 131, 132, 34, 35, 36, nil, - nil, nil, 128, nil, nil, nil, 120, 123, 124, 126, - 127, 129, 130, 131, 132, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, 128, nil, nil, nil, - 120, 123, 124, 126, 127, 129, 130, 131, 132, nil, - 50, 147, 148, 149, 150, 128, nil, nil, nil, 120, - 123, 124, 126, 127, 129, 130, 131, 132, nil, nil, - nil, nil, nil, nil, 50, 147, 148, 149, 150, 128, - nil, nil, nil, 120, 123, 124, 126, 127, 129, 130, - 131, 132, nil, 50, 147, 148, 149, 150, 128, nil, - nil, nil, 120, 123, 124, 126, 127, 129, 130, 131, - 132, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, 128, nil, nil, nil, 120, 123, 124, 126, - 127, 129, 130, 131, 132, nil, 50, 147, 148, 149, - 150, 128, nil, nil, nil, nil, 123, 124, 126, 127, - 129, 130, 131, 132, nil, nil, nil, nil, nil, nil, - 50, 147, 148, 149, 150, 128, nil, nil, nil, nil, - 123, 124, 126, 127, 129, 130, 131, 132, nil, 50, - 147, 148, 149, 150, nil, nil, nil, nil, nil, nil, - 120, 318, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 147, 148, 149, 150, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 31, 32, 33, 34, 35, 36, nil, nil, nil, 128, - nil, 38, nil, 120, 123, 124, 126, 127, 129, 130, - 131, 132, nil, nil, nil, nil, 120, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, 128, nil, nil, nil, nil, 123, 124, 126, - 127, 129, 130, 131, 132, 128, nil, nil, nil, 120, - 123, 124, 126, 127, 129, 130, 131, 132, nil, nil, - nil, nil, 120, nil, nil, nil, nil, nil, nil, nil, - 50, 147, 148, 149, 150, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 147, 148, 149, 150, 128, nil, - nil, nil, nil, 123, 124, 126, 127, 129, 130, 131, - 132, 128, nil, nil, nil, 120, 123, 124, 126, 127, - 129, 130, 131, 132, nil, nil, nil, nil, 120, nil, - nil, nil, nil, nil, nil, nil, 50, 147, 148, 149, - 150, nil, nil, nil, nil, nil, nil, nil, nil, 50, - 147, 148, 149, 150, 128, nil, nil, nil, nil, 123, - 124, 126, 127, 129, 130, 131, 132, 128, nil, nil, - nil, 120, 123, 124, 126, 127, 129, 130, 131, 132, - nil, nil, nil, nil, 120, nil, nil, nil, nil, nil, - nil, nil, 50, 147, 148, 149, 150, nil, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - 128, nil, nil, nil, nil, 123, 124, 126, 127, 129, - 130, 131, 132, 128, nil, nil, nil, 120, 123, 124, - 126, 127, 129, 130, 131, 132, nil, nil, nil, nil, - 120, nil, nil, nil, nil, nil, nil, nil, 50, 147, - 148, 149, 150, nil, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, 128, nil, nil, nil, - nil, 123, 124, 126, 127, 129, 130, 131, 132, 128, - nil, nil, nil, 120, 123, 124, 126, 127, 129, 130, - 131, 132, nil, nil, nil, nil, 120, nil, nil, nil, - nil, nil, nil, nil, 50, 147, 148, 149, 150, nil, - nil, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, 128, nil, nil, nil, nil, 123, 124, 126, - 127, 129, 130, 131, 132, 128, nil, nil, nil, 120, - 123, 124, 126, 127, 129, 130, 131, 132, nil, nil, - nil, nil, 120, nil, nil, nil, nil, nil, nil, nil, - 50, 147, 148, 149, 150, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 147, 148, 149, 150, 128, nil, - nil, nil, nil, 123, 124, 126, 127, 129, 130, 131, - 132, 128, nil, nil, nil, 120, 123, 124, 126, 127, - 129, 130, 131, 132, nil, nil, nil, nil, 120, nil, - nil, nil, nil, nil, nil, nil, 50, 147, 148, 149, - 150, nil, nil, nil, nil, nil, nil, nil, nil, 50, - 147, 148, 149, 150, 128, nil, nil, nil, nil, 123, - 124, 126, 127, 129, 130, 131, 132, 128, nil, nil, - nil, 120, 123, 124, 126, 127, 129, 130, 131, 132, - nil, nil, nil, nil, 120, nil, nil, nil, nil, nil, - nil, nil, 50, 147, 148, 149, 150, nil, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - 128, nil, nil, nil, nil, 123, 124, 126, 127, 129, - 130, 131, 132, 128, nil, nil, nil, 120, 123, 124, - 126, 127, 129, 130, 131, 132, nil, nil, nil, nil, - 120, nil, nil, nil, nil, nil, nil, nil, 50, 147, - 148, 149, 150, nil, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, 128, nil, nil, nil, - nil, 123, 124, 126, 127, 129, 130, 131, 132, 128, - nil, nil, nil, 120, 123, 124, 126, 127, 129, 130, - 131, 132, nil, nil, nil, nil, 120, nil, nil, nil, - nil, nil, nil, nil, 50, 147, 148, 149, 150, nil, - nil, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, 128, nil, nil, nil, nil, 123, 124, 126, - 127, 129, 130, 131, 132, 128, nil, nil, nil, nil, - 123, 124, 126, 127, 129, 130, 131, 132, 120, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 50, 147, 148, 149, 150, 120, nil, nil, nil, nil, - nil, nil, nil, 50, 147, 148, 149, 150, nil, nil, - nil, 34, 35, 36, nil, nil, nil, 128, nil, nil, - nil, nil, 123, 124, 126, 127, 129, 130, 131, 132, - nil, nil, nil, 368, 369, nil, nil, nil, 120, 123, - 124, 126, 127, 129, 130, 131, 132, nil, nil, nil, - nil, nil, 120, nil, nil, 50, 147, 148, 149, 150, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 50, 147, 148, 149, 150, 128, nil, nil, - nil, nil, 123, 124, 126, 127, 129, 130, 131, 132, - 401, 402, nil, nil, nil, 120, 123, 124, 126, 127, - 129, 130, 131, 132, nil, nil, nil, nil, 120, 415, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 50, - 147, 148, 149, 150, 128, nil, nil, nil, nil, 123, - 124, 126, 127, 129, 130, 131, 132, 128, nil, nil, - nil, nil, 123, 124, 126, 127, 129, 130, 131, 132, - 120, 418, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 50, 147, 148, 149, 150, nil, nil, nil, - nil, nil, nil, nil, nil, 50, 147, 148, 149, 150, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 128, - nil, nil, nil, nil, 123, 124, 126, 127, 129, 130, - 131, 132, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 120, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, - nil, nil, nil, 128, nil, 38, nil, 120, 123, 124, - 126, 127, 129, 130, 131, 132, nil, nil, nil, nil, - 120, 430, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 50, 147, 148, 149, 150, 128, nil, nil, nil, - nil, 123, 124, 126, 127, 129, 130, 131, 132, 128, - nil, nil, nil, nil, 123, 124, 126, 127, 129, 130, - 131, 132, 120, 432, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 50, 147, 148, 149, 150, 120, - 436, nil, nil, nil, nil, nil, nil, 50, 147, 148, - 149, 150, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 128, nil, nil, nil, nil, 123, 124, 126, 127, - 129, 130, 131, 132, nil, nil, nil, nil, 128, nil, - nil, nil, nil, 123, 124, 126, 127, 129, 130, 131, - 132, 120, 444, nil, nil, nil, nil, nil, nil, 50, - 147, 148, 149, 150, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 50, 147, 148, 149, - 150, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 128, nil, nil, nil, nil, 123, 124, 126, 127, 129, - 130, 131, 132, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 277, 364, nil, nil, nil, nil, nil, nil, 50, 147, - 148, 149, 150, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 31, 32, 33, 34, 35, 36, 37, 281, 164, 49, - nil, 38, nil, nil, nil, nil, nil, nil, nil, nil, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 31, 32, 33, - 34, 35, 36, 37, nil, nil, nil, 50, 38, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 50, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 31, 32, 33, 34, 35, 36, 37, 65, - nil, nil, nil, 38, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 67, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 31, 32, 33, 34, 35, 36, 37, - 65, nil, nil, nil, 38, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 10, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, - 37, 173, nil, nil, nil, 38, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, - 282, nil, nil, nil, nil, 38, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 31, 32, 33, 34, 35, 36, 287, - nil, nil, nil, nil, 38, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 31, 32, 33, 34, 35, 36, 312, 364, - nil, nil, nil, 38, nil, nil, nil, nil, nil, nil, - nil, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 31, 32, - 33, 34, 35, 36, 37, 281, 404, 49, nil, 38, - nil, nil, nil, nil, nil, nil, nil, nil, 10, 11, - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 31, 32, 33, 34, 35, - 36, 37, nil, nil, nil, nil, 38, 10, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, - 37, nil, nil, nil, nil, 38, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 31, 32, 33, 34, 35, 36, 37, - nil, nil, nil, nil, 38, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 31, 32, 33, 34, 35, 36, 37, nil, - nil, nil, nil, 38, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 31, 32, 33, 34, 35, 36, 37, nil, nil, - nil, nil, 38, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 31, 32, 33, 34, 35, 36, 37, nil, nil, nil, - nil, 38, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 31, - 32, 33, 34, 35, 36, 37, nil, nil, nil, 359, - 38, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 31, 32, 33, 34, 35, 36, nil, - nil, nil, nil, nil, 38, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 31, 32, 33, - 34, 35, 36, nil, nil, nil, nil, nil, 38, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 31, 32, 33, 34, 35, 36, nil, nil, nil, - nil, nil, 38, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 31, 32, 33, 34, 35, - 36, nil, nil, nil, nil, nil, 38, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 31, - 32, 33, 34, 35, 36, nil, nil, nil, nil, nil, - 38 ] - -racc_action_check = [ - 65, 65, 65, 65, 65, 65, 65, 210, 39, 65, - 65, 65, 65, 65, 65, 65, 65, 55, 45, 65, - 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, - 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, - 65, 65, 65, 46, 210, 65, 210, 65, 316, 345, - 65, 65, 65, 65, 65, 65, 65, 65, 85, 276, - 57, 163, 58, 135, 182, 186, 59, 345, 70, 184, - 114, 163, 85, 289, 294, 316, 135, 135, 182, 186, - 46, 136, 136, 65, 65, 65, 65, 65, 102, 102, - 102, 102, 102, 102, 102, 45, 276, 102, 102, 102, - 102, 102, 102, 102, 102, 70, 114, 102, 102, 102, - 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, - 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, - 102, 30, 280, 102, 60, 102, 276, 73, 102, 102, - 102, 102, 102, 102, 102, 102, 112, 112, 112, 184, - 112, 112, 112, 289, 294, 112, 112, 112, 112, 112, - 112, 112, 112, 257, 260, 330, 33, 42, 48, 280, - 107, 102, 102, 102, 102, 102, 30, 257, 330, 330, - 42, 80, 175, 107, 311, 361, 137, 137, 80, 260, - 84, 112, 87, 112, 260, 175, 112, 112, 112, 112, - 112, 112, 112, 112, 187, 187, 187, 48, 187, 187, - 187, 33, 30, 187, 187, 187, 187, 187, 187, 187, - 187, 311, 361, 207, 419, 139, 139, 80, 331, 112, - 112, 112, 112, 112, 211, 304, 207, 133, 419, 284, - 380, 331, 331, 89, 211, 48, 284, 33, 304, 187, - 98, 187, 100, 380, 187, 187, 187, 187, 187, 187, - 187, 187, 191, 191, 191, 80, 191, 191, 191, 382, - 411, 191, 191, 191, 191, 191, 191, 191, 191, 144, - 144, 101, 382, 411, 109, 284, 110, 187, 187, 187, - 187, 187, 133, 133, 133, 133, 133, 133, 133, 133, - 133, 133, 5, 111, 5, 332, 332, 191, 113, 191, - 333, 333, 191, 191, 191, 191, 191, 191, 191, 191, - 192, 192, 192, 284, 192, 192, 192, 300, 301, 192, - 192, 192, 192, 192, 192, 192, 192, 300, 301, 115, - 302, 317, 410, 5, 414, 191, 191, 191, 191, 191, - 302, 317, 410, 417, 414, 116, 429, 119, 431, 435, - 66, 140, 66, 417, 141, 192, 429, 192, 431, 435, - 192, 192, 192, 192, 192, 192, 192, 192, 296, 296, - 296, 5, 296, 296, 296, 443, 142, 296, 296, 296, - 296, 296, 296, 296, 296, 443, 49, 49, 49, 334, - 334, 66, 49, 192, 192, 192, 192, 192, 74, 74, - 74, 335, 335, 143, 74, 138, 138, 138, 138, 151, - 69, 336, 336, 296, 158, 296, 337, 337, 296, 296, - 296, 296, 296, 296, 296, 296, 375, 375, 375, 66, - 375, 375, 375, 340, 340, 375, 375, 375, 375, 375, - 375, 375, 375, 338, 338, 338, 338, 161, 162, 69, - 165, 296, 296, 296, 296, 296, 339, 339, 339, 339, - 177, 188, 200, 201, 203, 204, 212, 213, 167, 216, - 217, 375, 263, 375, 264, 267, 375, 375, 375, 375, - 375, 375, 375, 375, 376, 376, 376, 69, 376, 376, - 376, 270, 274, 376, 376, 376, 376, 376, 376, 376, - 376, 303, 324, 325, 341, 167, 342, 167, 343, 375, - 375, 375, 375, 375, 344, 351, 354, 356, 362, 363, - 367, 369, 389, 390, 400, 402, 403, 407, 427, 376, - nil, 376, nil, nil, 376, 376, 376, 376, 376, 376, - 376, 376, 377, 377, 377, 167, 377, 377, 377, nil, - nil, 377, 377, 377, 377, 377, 377, 377, 377, nil, - nil, nil, nil, nil, nil, nil, nil, 376, 376, 376, - 376, 376, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 377, nil, 377, - nil, nil, 377, 377, 377, 377, 377, 377, 377, 377, - 415, 415, 415, nil, 415, 415, 415, nil, nil, 415, - 415, 415, 415, 415, 415, 415, 415, nil, nil, nil, - nil, nil, nil, nil, nil, 377, 377, 377, 377, 377, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 415, nil, 415, nil, nil, - 415, 415, 415, 415, 415, 415, 415, 415, 418, 418, - 418, nil, 418, 418, 418, nil, nil, 418, 418, 418, - 418, 418, 418, 418, 418, nil, nil, nil, nil, nil, - nil, nil, nil, 415, 415, 415, 415, 415, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 418, nil, 418, nil, nil, 418, 418, - 418, 418, 418, 418, 418, 418, 426, 426, 426, nil, - 426, 426, 426, nil, nil, 426, 426, 426, 426, 426, - 426, 426, 426, nil, nil, nil, nil, nil, nil, nil, - nil, 418, 418, 418, 418, 418, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 426, nil, 426, nil, nil, 426, 426, 426, 426, - 426, 426, 426, 426, 430, 430, 430, nil, 430, 430, - 430, nil, nil, 430, 430, 430, 430, 430, 430, 430, - 430, nil, nil, nil, nil, nil, nil, nil, nil, 426, - 426, 426, 426, 426, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 430, - nil, 430, nil, nil, 430, 430, 430, 430, 430, 430, - 430, 430, 432, 432, 432, nil, 432, 432, 432, nil, - nil, 432, 432, 432, 432, 432, 432, 432, 432, nil, - nil, nil, nil, nil, nil, nil, nil, 430, 430, 430, - 430, 430, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 432, nil, 432, - nil, nil, 432, 432, 432, 432, 432, 432, 432, 432, - 433, 433, 433, nil, 433, 433, 433, nil, nil, 433, - 433, 433, 433, 433, 433, 433, 433, nil, nil, nil, - nil, nil, nil, nil, nil, 432, 432, 432, 432, 432, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 433, nil, 433, nil, nil, - 433, 433, 433, 433, 433, 433, 433, 433, 436, 436, - 436, nil, 436, 436, 436, nil, nil, 436, 436, 436, - 436, 436, 436, 436, 436, nil, nil, nil, nil, nil, - nil, nil, nil, 433, 433, 433, 433, 433, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 436, nil, 436, nil, nil, 436, 436, - 436, 436, 436, 436, 436, 436, 437, 437, 437, nil, - 437, 437, 437, nil, nil, 437, 437, 437, 437, 437, - 437, 437, 437, nil, nil, nil, nil, nil, nil, nil, - nil, 436, 436, 436, 436, 436, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 437, nil, 437, nil, nil, 437, 437, 437, 437, - 437, 437, 437, 437, 444, 444, 444, nil, 444, 444, - 444, nil, nil, 444, 444, 444, 444, 444, 444, 444, - 444, nil, nil, nil, nil, nil, nil, nil, nil, 437, - 437, 437, 437, 437, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 444, - nil, 444, nil, nil, 444, 444, 444, 444, 444, 444, - 444, 444, 445, 445, 445, nil, 445, 445, 445, nil, - nil, 445, 445, 445, 445, 445, 445, 445, 445, nil, - nil, nil, nil, nil, nil, nil, nil, 444, 444, 444, - 444, 444, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 445, nil, 445, - nil, nil, 445, 445, 445, 445, 445, 445, 445, 445, - 447, 447, 447, nil, 447, 447, 447, nil, nil, 447, - 447, 447, 447, 447, 447, 447, 447, nil, nil, nil, - nil, nil, nil, nil, nil, 445, 445, 445, 445, 445, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 447, nil, 447, nil, nil, - 447, 447, 447, 447, 447, 447, 447, 447, 450, 450, - 450, nil, 450, 450, 450, nil, nil, 450, 450, 450, - 450, 450, 450, 450, 450, nil, nil, nil, nil, nil, - nil, nil, nil, 447, 447, 447, 447, 447, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 450, nil, 450, nil, nil, 450, 450, - 450, 450, 450, 450, 450, 450, 454, 454, 454, nil, - 454, 454, 454, nil, nil, 454, 454, 454, 454, 454, - 454, 454, 454, 67, nil, nil, nil, 67, nil, nil, - nil, 450, 450, 450, 450, 450, nil, nil, nil, nil, - nil, nil, 122, nil, nil, nil, nil, nil, nil, nil, - nil, 454, nil, 454, nil, nil, 454, 454, 454, 454, - 454, 454, 454, 454, nil, nil, 67, nil, nil, nil, - nil, 67, 67, 67, 67, 67, 67, 67, 67, 122, - nil, nil, nil, nil, 122, 122, 122, 122, nil, 454, - 454, 454, 454, 454, 120, nil, nil, nil, 120, nil, - nil, nil, nil, nil, 67, 67, 67, 67, 67, 154, - nil, nil, nil, 154, nil, nil, 120, 120, 120, 120, - 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, - 120, 120, 120, 120, nil, nil, nil, 120, nil, 120, - nil, nil, 120, 120, 120, 120, 120, 120, 120, 120, - 154, nil, 154, nil, nil, 154, nil, 154, 154, 154, - 154, 154, 154, 154, 154, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 120, 120, 120, 120, 120, - 220, nil, nil, nil, 220, nil, nil, nil, nil, nil, - 154, 154, 154, 154, 154, nil, nil, nil, nil, nil, - nil, nil, 220, 220, 220, 220, 220, 220, 220, 220, - 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, - nil, nil, nil, 220, nil, 220, nil, nil, 220, 220, - 220, 220, 220, 220, 220, 220, nil, nil, nil, nil, - nil, nil, nil, nil, 224, nil, nil, nil, 224, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 220, 220, 220, 220, 220, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, nil, nil, nil, 224, nil, 224, - nil, nil, 224, 224, 224, 224, 224, 224, 224, 224, - 258, nil, nil, nil, 258, nil, nil, nil, nil, nil, - nil, nil, nil, 315, nil, nil, nil, 315, nil, nil, - nil, nil, nil, nil, nil, 224, 224, 224, 224, 224, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 258, nil, nil, nil, nil, 258, 258, - 258, 258, 258, 258, 258, 258, 315, nil, nil, nil, - nil, 315, 315, 315, 315, 315, 315, 315, 315, 347, - 347, nil, nil, 347, nil, nil, nil, nil, nil, nil, - nil, 258, 258, 258, 258, 258, 384, nil, nil, nil, - 384, nil, nil, nil, 315, 315, 315, 315, 315, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 347, nil, 347, nil, nil, 347, nil, 347, 347, 347, - 347, 347, 347, 347, 347, nil, nil, 384, nil, 384, - nil, nil, 384, nil, 384, 384, 384, 384, 384, 384, - 384, 384, 393, nil, nil, nil, 393, nil, nil, nil, - 347, 347, 347, 347, 347, nil, nil, 439, 439, nil, - nil, 439, nil, nil, nil, nil, nil, 384, 384, 384, - 384, 384, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 393, nil, nil, nil, nil, - 393, 393, 393, 393, 393, 393, 393, 393, 439, nil, - 439, nil, 117, 439, 117, 439, 439, 439, 439, 439, - 439, 439, 439, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 393, 393, 393, 393, 393, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 439, 439, - 439, 439, 439, 117, nil, nil, nil, nil, 117, 117, - 117, 117, 117, 117, 117, 117, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 202, nil, 202, nil, nil, nil, nil, nil, nil, - nil, 117, 117, 117, 117, 117, 202, 202, 202, 202, - 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, - 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, - nil, nil, 202, nil, 202, nil, nil, 202, 202, 202, - 202, 202, 202, 202, 202, 305, nil, 305, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 306, nil, - 306, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 202, 202, 202, 202, 202, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 305, nil, nil, nil, - nil, 305, 305, 305, 305, 305, 305, 305, 305, 306, - nil, 379, nil, 379, 306, 306, 306, 306, 306, 306, - 306, 306, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 305, 305, 305, 305, 305, nil, - nil, nil, nil, nil, nil, nil, nil, 306, 306, 306, - 306, 306, 379, nil, nil, nil, nil, 379, 379, 379, - 379, 379, 379, 379, 379, 71, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 99, nil, - 71, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 379, 379, 379, 379, 379, nil, nil, nil, 71, 71, - 71, nil, nil, 71, 71, nil, nil, nil, nil, 71, - 71, 71, 71, 71, 71, 71, 71, 99, nil, nil, - nil, 123, 99, 99, 99, 99, 99, 99, 99, 99, - nil, nil, nil, nil, 124, nil, nil, nil, nil, nil, - nil, nil, 71, 71, 71, 71, 71, nil, nil, nil, - nil, nil, nil, nil, nil, 99, 99, 99, 99, 99, - 123, nil, nil, nil, nil, 123, 123, 123, 123, 123, - 123, 123, 123, 124, nil, nil, nil, 125, 124, 124, - 124, 124, 124, 124, 124, 124, nil, nil, nil, nil, - 126, nil, nil, nil, nil, nil, nil, nil, 123, 123, - 123, 123, 123, nil, nil, nil, nil, nil, nil, nil, - nil, 124, 124, 124, 124, 124, 125, nil, nil, nil, - nil, 125, 125, 125, 125, 125, 125, 125, 125, 126, - nil, nil, nil, nil, 126, 126, 126, 126, 126, 126, - 126, 126, nil, nil, 157, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 125, 125, 125, 125, 125, 157, - nil, nil, nil, 160, nil, nil, nil, 126, 126, 126, - 126, 126, nil, nil, nil, nil, nil, 157, 157, 157, - nil, nil, 157, 157, nil, nil, nil, 178, 157, 157, - 157, 157, 157, 157, 157, 157, 160, 160, 160, nil, - nil, nil, 160, nil, nil, nil, 185, 160, 160, 160, - 160, 160, 160, 160, 160, nil, nil, nil, nil, nil, - nil, 157, 157, 157, 157, 157, 178, nil, nil, nil, - 196, 178, 178, 178, 178, 178, 178, 178, 178, nil, - 160, 160, 160, 160, 160, 185, nil, nil, nil, 197, - 185, 185, 185, 185, 185, 185, 185, 185, nil, nil, - nil, nil, nil, nil, 178, 178, 178, 178, 178, 196, - nil, nil, nil, 198, 196, 196, 196, 196, 196, 196, - 196, 196, nil, 185, 185, 185, 185, 185, 197, nil, - nil, nil, 199, 197, 197, 197, 197, 197, 197, 197, - 197, nil, nil, nil, nil, nil, nil, 196, 196, 196, - 196, 196, 198, nil, nil, nil, 214, 198, 198, 198, - 198, 198, 198, 198, 198, nil, 197, 197, 197, 197, - 197, 199, nil, nil, nil, nil, 199, 199, 199, 199, - 199, 199, 199, 199, nil, nil, nil, nil, nil, nil, - 198, 198, 198, 198, 198, 214, nil, nil, nil, nil, - 214, 214, 214, 214, 214, 214, 214, 214, nil, 199, - 199, 199, 199, 199, nil, nil, nil, nil, nil, nil, - 215, 215, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 214, 214, 214, 214, 214, 215, 215, - 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, - 215, 215, 215, 215, 215, 215, nil, nil, nil, 215, - nil, 215, nil, 226, 215, 215, 215, 215, 215, 215, - 215, 215, nil, nil, nil, nil, 238, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 215, 215, 215, - 215, 215, 226, nil, nil, nil, nil, 226, 226, 226, - 226, 226, 226, 226, 226, 238, nil, nil, nil, 239, - 238, 238, 238, 238, 238, 238, 238, 238, nil, nil, - nil, nil, 240, nil, nil, nil, nil, nil, nil, nil, - 226, 226, 226, 226, 226, nil, nil, nil, nil, nil, - nil, nil, nil, 238, 238, 238, 238, 238, 239, nil, - nil, nil, nil, 239, 239, 239, 239, 239, 239, 239, - 239, 240, nil, nil, nil, 241, 240, 240, 240, 240, - 240, 240, 240, 240, nil, nil, nil, nil, 242, nil, - nil, nil, nil, nil, nil, nil, 239, 239, 239, 239, - 239, nil, nil, nil, nil, nil, nil, nil, nil, 240, - 240, 240, 240, 240, 241, nil, nil, nil, nil, 241, - 241, 241, 241, 241, 241, 241, 241, 242, nil, nil, - nil, 243, 242, 242, 242, 242, 242, 242, 242, 242, - nil, nil, nil, nil, 244, nil, nil, nil, nil, nil, - nil, nil, 241, 241, 241, 241, 241, nil, nil, nil, - nil, nil, nil, nil, nil, 242, 242, 242, 242, 242, - 243, nil, nil, nil, nil, 243, 243, 243, 243, 243, - 243, 243, 243, 244, nil, nil, nil, 245, 244, 244, - 244, 244, 244, 244, 244, 244, nil, nil, nil, nil, - 246, nil, nil, nil, nil, nil, nil, nil, 243, 243, - 243, 243, 243, nil, nil, nil, nil, nil, nil, nil, - nil, 244, 244, 244, 244, 244, 245, nil, nil, nil, - nil, 245, 245, 245, 245, 245, 245, 245, 245, 246, - nil, nil, nil, 247, 246, 246, 246, 246, 246, 246, - 246, 246, nil, nil, nil, nil, 248, nil, nil, nil, - nil, nil, nil, nil, 245, 245, 245, 245, 245, nil, - nil, nil, nil, nil, nil, nil, nil, 246, 246, 246, - 246, 246, 247, nil, nil, nil, nil, 247, 247, 247, - 247, 247, 247, 247, 247, 248, nil, nil, nil, 249, - 248, 248, 248, 248, 248, 248, 248, 248, nil, nil, - nil, nil, 250, nil, nil, nil, nil, nil, nil, nil, - 247, 247, 247, 247, 247, nil, nil, nil, nil, nil, - nil, nil, nil, 248, 248, 248, 248, 248, 249, nil, - nil, nil, nil, 249, 249, 249, 249, 249, 249, 249, - 249, 250, nil, nil, nil, 251, 250, 250, 250, 250, - 250, 250, 250, 250, nil, nil, nil, nil, 252, nil, - nil, nil, nil, nil, nil, nil, 249, 249, 249, 249, - 249, nil, nil, nil, nil, nil, nil, nil, nil, 250, - 250, 250, 250, 250, 251, nil, nil, nil, nil, 251, - 251, 251, 251, 251, 251, 251, 251, 252, nil, nil, - nil, 253, 252, 252, 252, 252, 252, 252, 252, 252, - nil, nil, nil, nil, 254, nil, nil, nil, nil, nil, - nil, nil, 251, 251, 251, 251, 251, nil, nil, nil, - nil, nil, nil, nil, nil, 252, 252, 252, 252, 252, - 253, nil, nil, nil, nil, 253, 253, 253, 253, 253, - 253, 253, 253, 254, nil, nil, nil, 255, 254, 254, - 254, 254, 254, 254, 254, 254, nil, nil, nil, nil, - 256, nil, nil, nil, nil, nil, nil, nil, 253, 253, - 253, 253, 253, nil, nil, nil, nil, nil, nil, nil, - nil, 254, 254, 254, 254, 254, 255, nil, nil, nil, - nil, 255, 255, 255, 255, 255, 255, 255, 255, 256, - nil, nil, nil, 262, 256, 256, 256, 256, 256, 256, - 256, 256, nil, nil, nil, nil, 266, nil, nil, nil, - nil, nil, nil, nil, 255, 255, 255, 255, 255, nil, - nil, nil, nil, nil, nil, nil, nil, 256, 256, 256, - 256, 256, 262, nil, nil, nil, nil, 262, 262, 262, - 262, 262, 262, 262, 262, 266, nil, nil, nil, nil, - 266, 266, 266, 266, 266, 266, 266, 266, 269, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 262, 262, 262, 262, 262, 281, nil, nil, nil, nil, - nil, nil, nil, 266, 266, 266, 266, 266, nil, nil, - nil, 269, 269, 269, nil, nil, nil, 269, nil, nil, - nil, nil, 269, 269, 269, 269, 269, 269, 269, 269, - nil, nil, nil, 281, 281, nil, nil, nil, 285, 281, - 281, 281, 281, 281, 281, 281, 281, nil, nil, nil, - nil, nil, 365, nil, nil, 269, 269, 269, 269, 269, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 281, 281, 281, 281, 281, 285, nil, nil, - nil, nil, 285, 285, 285, 285, 285, 285, 285, 285, - 365, 365, nil, nil, nil, 378, 365, 365, 365, 365, - 365, 365, 365, 365, nil, nil, nil, nil, 381, 381, - nil, nil, nil, nil, nil, 285, 285, 285, 285, 285, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 365, - 365, 365, 365, 365, 378, nil, nil, nil, nil, 378, - 378, 378, 378, 378, 378, 378, 378, 381, nil, nil, - nil, nil, 381, 381, 381, 381, 381, 381, 381, 381, - 383, 383, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 378, 378, 378, 378, 378, nil, nil, nil, - nil, nil, nil, nil, nil, 381, 381, 381, 381, 381, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 383, - nil, nil, nil, nil, 383, 383, 383, 383, 383, 383, - 383, 383, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 388, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 383, 383, 383, - 383, 383, 388, 388, 388, 388, 388, 388, 388, 388, - 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, - nil, nil, nil, 388, nil, 388, nil, 391, 388, 388, - 388, 388, 388, 388, 388, 388, nil, nil, nil, nil, - 412, 412, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 388, 388, 388, 388, 388, 391, nil, nil, nil, - nil, 391, 391, 391, 391, 391, 391, 391, 391, 412, - nil, nil, nil, nil, 412, 412, 412, 412, 412, 412, - 412, 412, 413, 413, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 391, 391, 391, 391, 391, 416, - 416, nil, nil, nil, nil, nil, nil, 412, 412, 412, - 412, 412, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 413, nil, nil, nil, nil, 413, 413, 413, 413, - 413, 413, 413, 413, nil, nil, nil, nil, 416, nil, - nil, nil, nil, 416, 416, 416, 416, 416, 416, 416, - 416, 428, 428, nil, nil, nil, nil, nil, nil, 413, - 413, 413, 413, 413, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 416, 416, 416, 416, - 416, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 428, nil, nil, nil, nil, 428, 428, 428, 428, 428, - 428, 428, 428, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 277, 277, nil, nil, nil, nil, nil, nil, 428, 428, - 428, 428, 428, 277, 277, 277, 277, 277, 277, 277, - 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, - 277, 277, 277, 277, 277, 277, 277, 277, 72, 277, - nil, 277, nil, nil, nil, nil, nil, nil, nil, nil, - 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, - 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, - 72, 72, 72, 72, nil, nil, nil, 277, 72, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 1, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 72, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 41, - nil, nil, nil, 1, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, 41, 41, 41, 41, - 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, - 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, - 62, nil, nil, nil, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 78, nil, nil, nil, 62, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 78, 78, 78, 78, 78, 78, 78, 78, - 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, - 172, nil, nil, nil, nil, 78, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 172, 172, 172, 172, 172, 172, 172, 172, 172, - 172, 172, 172, 172, 172, 172, 172, 172, 172, 181, - nil, nil, nil, nil, 172, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, - 181, 181, 181, 181, 181, 181, 181, 181, 312, 312, - nil, nil, nil, 181, nil, nil, nil, nil, nil, nil, - nil, 312, 312, 312, 312, 312, 312, 312, 312, 312, - 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, - 312, 312, 312, 312, 312, 312, 366, 312, nil, 312, - nil, nil, nil, nil, nil, nil, nil, nil, 366, 366, - 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, - 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, - 366, 366, nil, nil, nil, nil, 366, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, nil, nil, nil, nil, 0, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, - nil, nil, nil, nil, 6, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, nil, - nil, nil, nil, 7, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, nil, nil, - nil, nil, 8, 9, 9, 9, 9, 9, 9, 9, - 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, - 9, 9, 9, 9, 9, 9, 9, nil, nil, nil, - nil, 9, 275, 275, 275, 275, 275, 275, 275, 275, - 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, - 275, 275, 275, 275, 275, 275, nil, nil, nil, 275, - 275, 56, 56, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 56, 56, 56, 56, 56, nil, - nil, nil, nil, nil, 56, 77, 77, 77, 77, 77, - 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, - 77, 77, 77, nil, nil, nil, nil, nil, 77, 81, - 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, - 81, 81, 81, 81, 81, 81, 81, nil, nil, nil, - nil, nil, 81, 82, 82, 82, 82, 82, 82, 82, - 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, - 82, nil, nil, nil, nil, nil, 82, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, - 83, 83, 83, 83, 83, nil, nil, nil, nil, nil, - 83 ] - -racc_action_pointer = [ - 4005, 3703, nil, nil, nil, 295, 4034, 4063, 4092, 4121, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 126, nil, nil, 161, nil, nil, nil, nil, nil, 8, - nil, 3744, 160, nil, nil, 9, 34, nil, 159, 354, - nil, nil, nil, nil, nil, 12, 4174, 55, 57, -20, - 129, nil, 3785, nil, nil, -3, 353, 1318, nil, 411, - 59, 2026, 3638, 127, 366, nil, nil, 4198, 3825, nil, - 179, 4222, 4246, 4270, 104, 52, nil, 171, nil, 157, - nil, nil, nil, nil, nil, nil, nil, nil, 248, 2039, - 250, 279, 85, nil, nil, nil, nil, 163, nil, 275, - 277, 294, 143, 299, 20, 332, 348, 1795, nil, 267, - 1389, nil, 1333, 2082, 2095, 2138, 2151, nil, nil, nil, - nil, nil, nil, 216, nil, 15, 24, 123, 350, 156, - 305, 293, 314, 340, 205, nil, nil, nil, nil, nil, - nil, 398, nil, nil, 1404, nil, nil, 2205, 377, nil, - 2224, 410, 448, 51, nil, 440, nil, 469, nil, nil, - nil, nil, 3864, nil, nil, 175, nil, 468, 2248, nil, - nil, 3903, 58, nil, 63, 2267, 59, 201, 469, nil, - nil, 259, 317, nil, nil, nil, 2291, 2310, 2334, 2353, - 470, 460, 1864, 467, 468, nil, nil, 216, nil, nil, - -2, 224, 466, 467, 2377, 2441, 393, 394, nil, nil, - 1475, nil, nil, nil, 1539, nil, 2484, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 2497, 2540, - 2553, 2596, 2609, 2652, 2665, 2708, 2721, 2764, 2777, 2820, - 2833, 2876, 2889, 2932, 2945, 2988, 3001, 157, 1595, nil, - 143, nil, 3044, 396, 437, nil, 3057, 438, nil, 3109, - 454, nil, nil, nil, 416, 4150, 50, 3601, nil, nil, - 123, 3126, nil, nil, 237, 3169, nil, nil, nil, 67, - nil, nil, nil, nil, 68, nil, 375, nil, nil, nil, - 317, 318, 330, 502, 228, 1918, 1931, nil, nil, nil, - nil, 175, 3939, nil, nil, 1608, 28, 331, nil, nil, - nil, nil, nil, nil, 502, 503, nil, nil, nil, nil, - 117, 180, 248, 253, 336, 348, 358, 363, 388, 401, - 374, 458, 445, 446, 451, 47, nil, 1664, nil, nil, - nil, 478, nil, nil, 479, nil, 480, nil, nil, nil, - nil, 176, 518, 519, nil, 3183, 3976, 483, nil, 484, - nil, nil, nil, nil, nil, 433, 491, 549, 3226, 1974, - 233, 3239, 262, 3291, 1681, nil, nil, nil, 3355, 527, - 528, 3398, nil, 1737, nil, nil, nil, nil, nil, nil, - 487, nil, 488, 526, nil, nil, nil, 526, nil, nil, - 332, 263, 3411, 3463, 334, 607, 3480, 343, 665, 218, - nil, nil, nil, nil, nil, nil, 723, 531, 3532, 346, - 781, 348, 839, 897, nil, 349, 955, 1013, nil, 1752, - nil, nil, nil, 375, 1071, 1129, nil, 1187, nil, nil, - 1245, nil, nil, nil, 1303, nil, nil, nil, nil, nil ] - -racc_action_default = [ - -265, -265, -1, -3, -4, -265, -53, -55, -57, -59, - -64, -65, -66, -67, -68, -69, -70, -71, -72, -73, - -74, -75, -76, -77, -78, -79, -80, -81, -82, -83, - -265, -89, -90, -265, -115, -116, -117, -118, -166, -265, - -2, -62, -265, -51, -60, -265, -120, -121, -265, -136, - -258, -52, -54, -56, -58, -86, -265, -88, -107, -265, - -110, 460, -265, -6, -7, -265, -265, -265, -50, -265, - -119, -265, -265, -265, -135, -138, -139, -265, -265, -91, - -265, -95, -97, -265, -265, -265, -111, -113, -262, -265, - -5, -8, -9, -10, -11, -12, -13, -14, -179, -265, - -265, -83, -265, -20, -21, -23, -24, -265, -26, -265, - -265, -265, -265, -265, -265, -265, -265, -265, -180, -181, - -265, -184, -198, -265, -265, -265, -265, -204, -205, -206, - -207, -208, -209, -210, -212, -216, -219, -222, -227, -230, - -232, -234, -236, -238, -240, -242, -255, -259, -260, -261, - -264, -62, -63, -167, -265, -179, -61, -265, -265, -126, - -265, -205, -265, -265, -134, -141, -143, -147, -148, -122, - -137, -140, -265, -85, -92, -265, -98, -100, -265, -94, - -96, -265, -265, -104, -265, -265, -265, -265, -265, -210, - -257, -265, -265, -19, -22, -25, -265, -265, -265, -265, - -265, -265, -265, -265, -265, -45, -46, -265, -48, -263, - -151, -265, -265, -265, -265, -265, -265, -265, -190, -191, - -265, -199, -200, -201, -265, -202, -265, -244, -245, -246, - -247, -248, -249, -250, -251, -252, -253, -254, -265, -265, - -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, - -265, -265, -265, -265, -265, -265, -265, -265, -265, -171, - -265, -175, -265, -265, -265, -124, -265, -205, -125, -265, - -265, -131, -132, -133, -265, -265, -152, -265, -145, -146, - -154, -265, -84, -93, -265, -265, -102, -87, -103, -265, - -106, -112, -114, -108, -265, -15, -265, -17, -18, -256, - -265, -265, -265, -265, -265, -265, -265, -44, -49, -47, - -150, -152, -265, -182, -183, -265, -265, -265, -187, -194, - -196, -197, -188, -189, -265, -265, -243, -213, -214, -215, - -217, -218, -220, -221, -223, -224, -225, -226, -228, -229, - -231, -233, -235, -237, -239, -265, -168, -265, -170, -174, - -176, -265, -178, -123, -265, -130, -265, -128, -149, -142, - -144, -153, -265, -265, -165, -265, -265, -265, -159, -205, - -99, -101, -105, -109, -16, -265, -265, -265, -265, -265, - -265, -265, -265, -265, -265, -211, -185, -186, -265, -265, - -203, -265, -169, -265, -173, -177, -129, -127, -155, -164, - -265, -157, -205, -265, -163, -158, -161, -27, -29, -30, - -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, - -195, -241, -172, -156, -160, -162, -265, -265, -265, -265, - -265, -265, -265, -265, -39, -265, -265, -265, -43, -265, - -192, -28, -31, -265, -265, -265, -35, -265, -37, -38, - -265, -41, -42, -193, -265, -33, -34, -36, -40, -32 ] - -racc_goto_table = [ - 47, 152, 57, 162, 75, 60, 70, 319, 153, 5, - 5, 257, 158, 176, 174, 51, 52, 53, 54, 76, - 393, 291, 279, 361, 74, 55, 82, 1, 58, 170, - 62, 104, 179, 180, 190, 223, 63, 101, 102, 41, - 47, 76, 188, 47, 171, 64, 157, 82, 82, 78, - 156, 82, 82, 82, 213, 85, 175, 90, 361, 163, - 98, 47, 2, 40, 47, 310, 91, 168, 194, 105, - 172, 210, 330, 331, 101, 47, 181, 332, 333, 360, - 182, 167, 338, 339, 200, 186, 204, 350, 317, 340, - 82, 334, 335, 336, 337, 153, 341, 98, 264, 342, - 151, 270, 343, 151, 344, 226, 105, 98, 174, 203, - nil, nil, 393, 190, 177, 212, nil, 174, nil, 81, - 190, 286, 276, nil, nil, nil, 291, 171, 292, nil, - 76, 291, nil, nil, nil, 269, nil, 299, nil, nil, - 81, 81, 82, nil, 81, 81, 81, nil, 327, 328, - 329, 82, nil, nil, 324, nil, 320, nil, 325, 200, - nil, nil, 47, 200, 200, 311, 210, 326, nil, nil, - 201, 210, nil, nil, nil, 210, nil, nil, nil, nil, - 420, nil, 98, 81, nil, 82, 98, 98, nil, nil, - 82, nil, 348, nil, 82, nil, nil, 190, nil, 153, - nil, 278, nil, nil, nil, 351, 306, 354, nil, nil, - 356, 322, 323, nil, nil, 212, nil, 370, nil, 212, - 190, nil, 367, nil, nil, 385, nil, nil, 371, nil, - nil, nil, 276, nil, nil, 81, nil, 70, nil, 171, - nil, 419, nil, nil, 81, 295, nil, nil, nil, 297, - 298, nil, nil, nil, nil, nil, nil, nil, 352, nil, - nil, nil, nil, nil, nil, nil, nil, 311, 200, 358, - nil, 47, 47, nil, nil, nil, nil, nil, 81, 47, - nil, 394, nil, 81, 167, nil, 167, 81, 153, nil, - nil, 98, nil, nil, nil, nil, nil, 403, nil, nil, - nil, nil, nil, nil, 207, nil, 400, 211, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 177, nil, - nil, 167, nil, nil, nil, 153, 421, 422, nil, 320, - nil, nil, nil, nil, 153, nil, nil, nil, nil, 210, - nil, nil, nil, nil, nil, nil, nil, 200, 200, 200, - nil, nil, nil, nil, 374, nil, nil, nil, 82, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 98, 98, 98, 394, nil, 167, nil, nil, nil, nil, - 153, nil, nil, nil, 300, 301, 302, 200, nil, 304, - 200, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 316, 200, nil, 200, 200, nil, 211, 200, 200, - 98, 211, nil, 98, nil, nil, 200, 200, nil, 200, - nil, 98, 200, nil, nil, 98, 200, 98, 98, nil, - nil, 98, 98, 407, 408, 409, nil, nil, 189, 98, - 98, nil, 98, 345, nil, 98, nil, nil, nil, 98, - nil, 81, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 221, 222, 189, 225, nil, nil, nil, nil, - nil, nil, nil, 434, nil, nil, 438, nil, nil, nil, - nil, nil, nil, nil, 441, nil, nil, nil, 446, nil, - 448, 449, 380, 382, 451, 452, nil, nil, nil, nil, - nil, nil, 455, 456, nil, 457, nil, nil, 458, nil, - nil, nil, 459, nil, nil, nil, nil, 189, nil, nil, - nil, nil, nil, nil, 189, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 410, 411, nil, 414, nil, - 417, nil, nil, nil, nil, nil, nil, 189, 189, 189, - 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, - 189, 189, 189, 189, 189, nil, nil, nil, nil, 429, - 431, 189, nil, 435, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 443, nil, nil, nil, nil, - nil, nil, nil, nil, 189, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 189, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 189 ] - -racc_goto_check = [ - 15, 27, 17, 43, 39, 17, 40, 59, 42, 5, - 5, 50, 42, 35, 32, 5, 5, 5, 5, 24, - 51, 37, 47, 49, 41, 15, 24, 1, 15, 39, - 7, 19, 33, 33, 73, 62, 8, 17, 18, 6, - 15, 24, 16, 15, 24, 4, 41, 24, 24, 31, - 26, 24, 24, 24, 48, 36, 34, 8, 49, 44, - 15, 15, 2, 2, 15, 47, 4, 15, 19, 4, - 31, 33, 63, 63, 17, 15, 31, 64, 64, 46, - 36, 5, 66, 66, 17, 36, 17, 53, 58, 67, - 24, 65, 65, 65, 65, 42, 68, 15, 42, 69, - 6, 42, 70, 6, 71, 74, 4, 15, 32, 15, - nil, nil, 51, 73, 6, 8, nil, 32, nil, 23, - 73, 16, 39, nil, nil, nil, 37, 24, 16, nil, - 24, 37, nil, nil, nil, 41, nil, 42, nil, nil, - 23, 23, 24, nil, 23, 23, 23, nil, 62, 62, - 62, 24, nil, nil, 48, nil, 42, nil, 48, 17, - nil, nil, 15, 17, 17, 39, 33, 42, nil, nil, - 9, 33, nil, nil, nil, 33, nil, nil, nil, nil, - 59, nil, 15, 23, nil, 24, 15, 15, nil, nil, - 24, nil, 27, nil, 24, nil, nil, 73, nil, 42, - nil, 6, nil, nil, nil, 16, 4, 42, nil, nil, - 42, 15, 15, nil, nil, 8, nil, 35, nil, 8, - 73, nil, 42, nil, nil, 62, nil, nil, 16, nil, - nil, nil, 39, nil, nil, 23, nil, 40, nil, 24, - nil, 50, nil, nil, 23, 9, nil, nil, nil, 9, - 9, nil, nil, nil, nil, nil, nil, nil, 15, nil, - nil, nil, nil, nil, nil, nil, nil, 39, 17, 15, - nil, 15, 15, nil, nil, nil, nil, nil, 23, 15, - nil, 27, nil, 23, 5, nil, 5, 23, 42, nil, - nil, 15, nil, nil, nil, nil, nil, 43, nil, nil, - nil, nil, nil, nil, 20, nil, 42, 20, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 6, nil, - nil, 5, nil, nil, nil, 42, 73, 27, nil, 42, - nil, nil, nil, nil, 42, nil, nil, nil, nil, 33, - nil, nil, nil, nil, nil, nil, nil, 17, 17, 17, - nil, nil, nil, nil, 9, nil, nil, nil, 24, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 15, 15, 15, 27, nil, 5, nil, nil, nil, nil, - 42, nil, nil, nil, 20, 20, 20, 17, nil, 20, - 17, nil, nil, nil, nil, nil, nil, nil, 17, nil, - nil, 20, 17, nil, 17, 17, nil, 20, 17, 17, - 15, 20, nil, 15, nil, nil, 17, 17, nil, 17, - nil, 15, 17, nil, nil, 15, 17, 15, 15, nil, - nil, 15, 15, 9, 9, 9, nil, nil, 60, 15, - 15, nil, 15, 20, nil, 15, nil, nil, nil, 15, - nil, 23, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 60, 60, 60, 60, nil, nil, nil, nil, - nil, nil, nil, 9, nil, nil, 9, nil, nil, nil, - nil, nil, nil, nil, 9, nil, nil, nil, 9, nil, - 9, 9, 20, 20, 9, 9, nil, nil, nil, nil, - nil, nil, 9, 9, nil, 9, nil, nil, 9, nil, - nil, nil, 9, nil, nil, nil, nil, 60, nil, nil, - nil, nil, nil, nil, 60, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 20, 20, nil, 20, nil, - 20, nil, nil, nil, nil, nil, nil, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, nil, nil, nil, nil, 20, - 20, 60, nil, 20, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 20, nil, nil, nil, nil, - nil, nil, nil, nil, 60, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 60, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 60 ] - -racc_goto_pointer = [ - nil, 27, 62, nil, 4, 9, 34, -11, -5, 58, - nil, nil, nil, nil, nil, -5, -57, -28, -27, -34, - 187, nil, nil, 63, -30, nil, -19, -66, nil, nil, - nil, -7, -64, -49, -24, -67, -4, -163, nil, -45, - -39, -25, -59, -69, -13, nil, -196, -145, -66, -253, - -143, -327, nil, -173, nil, nil, nil, nil, -127, -208, - 339, nil, -90, -169, -166, -154, -167, -162, -156, -154, - -152, -151, nil, -65, -28 ] - -racc_goto_default = [ - nil, nil, nil, 3, 4, 66, 73, nil, 93, 106, - 92, 94, 95, 96, 97, 155, nil, 29, nil, nil, - 107, 42, 6, 7, 8, 9, 44, 259, 27, 28, - 30, nil, 79, 80, nil, nil, nil, 86, 87, 45, - 46, nil, 146, 363, nil, 165, 166, 362, 321, 280, - nil, 258, 260, 261, 121, 118, 119, 122, nil, nil, - 133, 125, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, nil ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 92, :_reduce_1, - 2, 92, :_reduce_2, - 1, 93, :_reduce_3, - 1, 93, :_reduce_4, - 4, 94, :_reduce_5, - 3, 94, :_reduce_6, - 1, 98, :_reduce_7, - 2, 98, :_reduce_8, - 1, 100, :_reduce_9, - 1, 100, :_reduce_10, - 1, 100, :_reduce_11, - 1, 100, :_reduce_12, - 1, 100, :_reduce_13, - 1, 100, :_reduce_14, - 3, 101, :_reduce_15, - 4, 101, :_reduce_16, - 3, 101, :_reduce_17, - 3, 101, :_reduce_18, - 3, 99, :_reduce_19, - 2, 99, :_reduce_20, - 1, 109, :_reduce_21, - 2, 109, :_reduce_22, - 1, 110, :_reduce_23, - 1, 110, :_reduce_24, - 2, 102, :_reduce_25, - 1, 102, :_reduce_26, - 5, 103, :_reduce_27, - 7, 103, :_reduce_28, - 5, 103, :_reduce_29, - 5, 104, :_reduce_30, - 7, 104, :_reduce_31, - 9, 104, :_reduce_32, - 8, 104, :_reduce_33, - 8, 104, :_reduce_34, - 7, 104, :_reduce_35, - 8, 104, :_reduce_36, - 7, 104, :_reduce_37, - 7, 104, :_reduce_38, - 6, 104, :_reduce_39, - 8, 104, :_reduce_40, - 7, 104, :_reduce_41, - 7, 104, :_reduce_42, - 6, 104, :_reduce_43, - 3, 105, :_reduce_44, - 2, 105, :_reduce_45, - 2, 105, :_reduce_46, - 3, 105, :_reduce_47, - 2, 105, :_reduce_48, - 3, 105, :_reduce_49, - 3, 95, :_reduce_50, - 2, 95, :_reduce_51, - 2, 96, :_reduce_52, - 1, 96, :_reduce_53, - 2, 96, :_reduce_54, - 1, 96, :_reduce_55, - 2, 96, :_reduce_56, - 1, 96, :_reduce_57, - 2, 96, :_reduce_58, - 1, 96, :_reduce_59, - 1, 112, :_reduce_60, - 3, 112, :_reduce_61, - 1, 117, :_reduce_62, - 3, 117, :_reduce_63, - 1, 113, :_reduce_64, - 1, 113, :_reduce_65, - 1, 113, :_reduce_66, - 1, 113, :_reduce_67, - 1, 113, :_reduce_68, - 1, 114, :_reduce_69, - 1, 114, :_reduce_70, - 1, 114, :_reduce_71, - 1, 114, :_reduce_72, - 1, 114, :_reduce_73, - 1, 114, :_reduce_74, - 1, 114, :_reduce_75, - 1, 114, :_reduce_76, - 1, 114, :_reduce_77, - 1, 114, :_reduce_78, - 1, 114, :_reduce_79, - 1, 114, :_reduce_80, - 1, 114, :_reduce_81, - 1, 114, :_reduce_82, - 1, 114, :_reduce_83, - 5, 119, :_reduce_84, - 4, 119, :_reduce_85, - 2, 119, :_reduce_86, - 5, 119, :_reduce_87, - 2, 119, :_reduce_88, - 1, 121, :_reduce_89, - 1, 121, :_reduce_90, - 1, 122, :_reduce_91, - 2, 122, :_reduce_92, - 3, 123, :_reduce_93, - 2, 124, :_reduce_94, - 1, 124, :_reduce_95, - 2, 124, :_reduce_96, - 1, 124, :_reduce_97, - 1, 125, :_reduce_98, - 3, 125, :_reduce_99, - 1, 126, :_reduce_100, - 3, 126, :_reduce_101, - 2, 126, :_reduce_102, - 5, 120, :_reduce_103, - 4, 120, :_reduce_104, - 6, 120, :_reduce_105, - 5, 120, :_reduce_106, - 2, 120, :_reduce_107, - 5, 120, :_reduce_108, - 6, 120, :_reduce_109, - 2, 120, :_reduce_110, - 1, 127, :_reduce_111, - 3, 127, :_reduce_112, - 1, 128, :_reduce_113, - 3, 128, :_reduce_114, - 1, 115, :_reduce_115, - 1, 115, :_reduce_116, - 1, 115, :_reduce_117, - 1, 116, :_reduce_118, - 2, 97, :_reduce_119, - 1, 97, :_reduce_120, - 1, 131, :_reduce_121, - 3, 131, :_reduce_122, - 5, 131, :_reduce_123, - 4, 131, :_reduce_124, - 4, 131, :_reduce_125, - 3, 131, :_reduce_126, - 6, 131, :_reduce_127, - 5, 131, :_reduce_128, - 6, 131, :_reduce_129, - 5, 131, :_reduce_130, - 4, 131, :_reduce_131, - 4, 131, :_reduce_132, - 4, 131, :_reduce_133, - 3, 131, :_reduce_134, - 2, 130, :_reduce_135, - 1, 130, :_reduce_136, - 3, 130, :_reduce_137, - 2, 130, :_reduce_138, - 1, 132, :_reduce_139, - 2, 132, :_reduce_140, - 1, 134, :_reduce_141, - 3, 134, :_reduce_142, - 1, 136, :_reduce_143, - 3, 136, :_reduce_144, - 2, 137, :_reduce_145, - 2, 137, :_reduce_146, - 1, 137, :_reduce_147, - 1, 135, :_reduce_148, - 3, 135, :_reduce_149, - 2, 139, :_reduce_150, - 1, 139, :_reduce_151, - 1, 138, :_reduce_152, - 2, 138, :_reduce_153, - 1, 138, :_reduce_154, - 3, 140, :_reduce_155, - 4, 140, :_reduce_156, - 3, 140, :_reduce_157, - 3, 140, :_reduce_158, - 2, 140, :_reduce_159, - 4, 140, :_reduce_160, - 3, 140, :_reduce_161, - 4, 140, :_reduce_162, - 3, 140, :_reduce_163, - 3, 140, :_reduce_164, - 2, 140, :_reduce_165, - 1, 108, :_reduce_166, - 1, 118, :_reduce_167, - 3, 118, :_reduce_168, - 4, 118, :_reduce_169, - 2, 141, :_reduce_170, - 1, 141, :_reduce_171, - 4, 141, :_reduce_172, - 3, 141, :_reduce_173, - 2, 142, :_reduce_174, - 1, 143, :_reduce_175, - 2, 143, :_reduce_176, - 3, 144, :_reduce_177, - 2, 144, :_reduce_178, - 1, 145, :_reduce_179, - 1, 145, :_reduce_180, - 1, 145, :_reduce_181, - 3, 145, :_reduce_182, - 3, 145, :_reduce_183, - 1, 148, :_reduce_184, - 4, 148, :_reduce_185, - 4, 148, :_reduce_186, - 3, 148, :_reduce_187, - 3, 148, :_reduce_188, - 3, 148, :_reduce_189, - 2, 148, :_reduce_190, - 2, 148, :_reduce_191, - 6, 148, :_reduce_192, - 7, 148, :_reduce_193, - 1, 149, :_reduce_194, - 3, 149, :_reduce_195, - 1, 150, :_reduce_196, - 1, 150, :_reduce_197, - 1, 151, :_reduce_198, - 2, 151, :_reduce_199, - 2, 151, :_reduce_200, - 2, 151, :_reduce_201, - 2, 151, :_reduce_202, - 4, 151, :_reduce_203, - 1, 152, :_reduce_204, - 1, 152, :_reduce_205, - 1, 152, :_reduce_206, - 1, 152, :_reduce_207, - 1, 152, :_reduce_208, - 1, 152, :_reduce_209, - 1, 153, :_reduce_210, - 4, 153, :_reduce_211, - 1, 154, :_reduce_212, - 3, 154, :_reduce_213, - 3, 154, :_reduce_214, - 3, 154, :_reduce_215, - 1, 155, :_reduce_216, - 3, 155, :_reduce_217, - 3, 155, :_reduce_218, - 1, 156, :_reduce_219, - 3, 156, :_reduce_220, - 3, 156, :_reduce_221, - 1, 157, :_reduce_222, - 3, 157, :_reduce_223, - 3, 157, :_reduce_224, - 3, 157, :_reduce_225, - 3, 157, :_reduce_226, - 1, 158, :_reduce_227, - 3, 158, :_reduce_228, - 3, 158, :_reduce_229, - 1, 159, :_reduce_230, - 3, 159, :_reduce_231, - 1, 160, :_reduce_232, - 3, 160, :_reduce_233, - 1, 161, :_reduce_234, - 3, 161, :_reduce_235, - 1, 162, :_reduce_236, - 3, 162, :_reduce_237, - 1, 163, :_reduce_238, - 3, 163, :_reduce_239, - 1, 164, :_reduce_240, - 5, 164, :_reduce_241, - 1, 133, :_reduce_242, - 3, 133, :_reduce_243, - 1, 165, :_reduce_244, - 1, 165, :_reduce_245, - 1, 165, :_reduce_246, - 1, 165, :_reduce_247, - 1, 165, :_reduce_248, - 1, 165, :_reduce_249, - 1, 165, :_reduce_250, - 1, 165, :_reduce_251, - 1, 165, :_reduce_252, - 1, 165, :_reduce_253, - 1, 165, :_reduce_254, - 1, 111, :_reduce_255, - 3, 111, :_reduce_256, - 1, 107, :_reduce_257, - 1, 106, :_reduce_258, - 1, 146, :_reduce_259, - 1, 146, :_reduce_260, - 1, 146, :_reduce_261, - 1, 129, :_reduce_262, - 2, 147, :_reduce_263, - 1, 147, :_reduce_264 ] - -racc_reduce_n = 265 - -racc_shift_n = 460 - -racc_token_table = { - false => 0, - :error => 1, - :COLON => 2, - :CASE => 3, - :DEFAULT => 4, - :LBRACE => 5, - :RBRACE => 6, - :SEMICOLON => 7, - :IF => 8, - :LPAREN => 9, - :RPAREN => 10, - :ELSE => 11, - :SWITCH => 12, - :WHILE => 13, - :DO => 14, - :FOR => 15, - :GOTO => 16, - :CONTINUE => 17, - :BREAK => 18, - :RETURN => 19, - :COMMA => 20, - :EQ => 21, - :TYPEDEF => 22, - :EXTERN => 23, - :STATIC => 24, - :AUTO => 25, - :REGISTER => 26, - :VOID => 27, - :CHAR => 28, - :SHORT => 29, - :INT => 30, - :LONG => 31, - :FLOAT => 32, - :DOUBLE => 33, - :SIGNED => 34, - :UNSIGNED => 35, - :BOOL => 36, - :COMPLEX => 37, - :IMAGINARY => 38, - :STRUCT => 39, - :UNION => 40, - :ENUM => 41, - :CONST => 42, - :RESTRICT => 43, - :VOLATILE => 44, - :INLINE => 45, - :LBRACKET => 46, - :RBRACKET => 47, - :MUL => 48, - :ELLIPSIS => 49, - :TYPENAME => 50, - :DOT => 51, - :ARROW => 52, - :INC => 53, - :DEC => 54, - :SIZEOF => 55, - :AND => 56, - :ADD => 57, - :SUB => 58, - :NOT => 59, - :BANG => 60, - :DIV => 61, - :MOD => 62, - :LSHIFT => 63, - :RSHIFT => 64, - :LT => 65, - :GT => 66, - :LEQ => 67, - :GEQ => 68, - :EQEQ => 69, - :NEQ => 70, - :XOR => 71, - :OR => 72, - :ANDAND => 73, - :OROR => 74, - :QUESTION => 75, - :MULEQ => 76, - :DIVEQ => 77, - :MODEQ => 78, - :ADDEQ => 79, - :SUBEQ => 80, - :LSHIFTEQ => 81, - :RSHIFTEQ => 82, - :ANDEQ => 83, - :XOREQ => 84, - :OREQ => 85, - :ID => 86, - :ICON => 87, - :FCON => 88, - :CCON => 89, - :SCON => 90 } - -racc_nt_base = 91 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "COLON", - "CASE", - "DEFAULT", - "LBRACE", - "RBRACE", - "SEMICOLON", - "IF", - "LPAREN", - "RPAREN", - "ELSE", - "SWITCH", - "WHILE", - "DO", - "FOR", - "GOTO", - "CONTINUE", - "BREAK", - "RETURN", - "COMMA", - "EQ", - "TYPEDEF", - "EXTERN", - "STATIC", - "AUTO", - "REGISTER", - "VOID", - "CHAR", - "SHORT", - "INT", - "LONG", - "FLOAT", - "DOUBLE", - "SIGNED", - "UNSIGNED", - "BOOL", - "COMPLEX", - "IMAGINARY", - "STRUCT", - "UNION", - "ENUM", - "CONST", - "RESTRICT", - "VOLATILE", - "INLINE", - "LBRACKET", - "RBRACKET", - "MUL", - "ELLIPSIS", - "TYPENAME", - "DOT", - "ARROW", - "INC", - "DEC", - "SIZEOF", - "AND", - "ADD", - "SUB", - "NOT", - "BANG", - "DIV", - "MOD", - "LSHIFT", - "RSHIFT", - "LT", - "GT", - "LEQ", - "GEQ", - "EQEQ", - "NEQ", - "XOR", - "OR", - "ANDAND", - "OROR", - "QUESTION", - "MULEQ", - "DIVEQ", - "MODEQ", - "ADDEQ", - "SUBEQ", - "LSHIFTEQ", - "RSHIFTEQ", - "ANDEQ", - "XOREQ", - "OREQ", - "ID", - "ICON", - "FCON", - "CCON", - "SCON", - "$start", - "translation_unit", - "external_declaration", - "function_definition", - "declaration", - "declaration_specifiers", - "declarator", - "declaration_list", - "compound_statement", - "statement", - "labeled_statement", - "expression_statement", - "selection_statement", - "iteration_statement", - "jump_statement", - "identifier", - "constant_expression", - "typedef_name", - "block_item_list", - "block_item", - "expression", - "init_declarator_list", - "storage_class_specifier", - "type_specifier", - "type_qualifier", - "function_specifier", - "init_declarator", - "initializer", - "struct_or_union_specifier", - "enum_specifier", - "struct_or_union", - "struct_declaration_list", - "struct_declaration", - "specifier_qualifier_list", - "struct_declarator_list", - "struct_declarator", - "enumerator_list", - "enumerator", - "enumeration_constant", - "pointer", - "direct_declarator", - "type_qualifier_list", - "assignment_expression", - "parameter_type_list", - "identifier_list", - "parameter_list", - "parameter_declaration", - "abstract_declarator", - "type_name", - "direct_abstract_declarator", - "initializer_list", - "designation", - "designator_list", - "designator", - "primary_expression", - "constant", - "string_literal", - "postfix_expression", - "argument_expression_list", - "argument_expression", - "unary_expression", - "unary_operator", - "cast_expression", - "multiplicative_expression", - "additive_expression", - "shift_expression", - "relational_expression", - "equality_expression", - "and_expression", - "exclusive_or_expression", - "inclusive_or_expression", - "logical_and_expression", - "logical_or_expression", - "conditional_expression", - "assignment_operator" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'cast.y', 32) - def _reduce_1(val, _values, result) - result = TranslationUnit.new_at(val[0].pos, NodeChain[val[0]]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 33) - def _reduce_2(val, _values, result) - result = val[0]; result.entities << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 37) - def _reduce_3(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 38) - def _reduce_4(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 42) - def _reduce_5(val, _values, result) - result = make_function_def(val[0][0], val[0][1], val[1], val[2], val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 43) - def _reduce_6(val, _values, result) - result = make_function_def(val[0][0], val[0][1], val[1], nil , val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 47) - def _reduce_7(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 48) - def _reduce_8(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 54) - def _reduce_9(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 55) - def _reduce_10(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 56) - def _reduce_11(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 57) - def _reduce_12(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 58) - def _reduce_13(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 59) - def _reduce_14(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 63) - def _reduce_15(val, _values, result) - val[2].labels.unshift(PlainLabel.new_at(val[0].pos, val[0].val)); result = val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 64) - def _reduce_16(val, _values, result) - val[3].labels.unshift(Case .new_at(val[0].pos, val[1] )); result = val[3] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 65) - def _reduce_17(val, _values, result) - val[2].labels.unshift(Default .new_at(val[0].pos )); result = val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 67) - def _reduce_18(val, _values, result) - val[2].labels.unshift(PlainLabel.new_at(val[0].pos, val[0].name)); result = val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 71) - def _reduce_19(val, _values, result) - result = Block.new_at(val[0].pos, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 72) - def _reduce_20(val, _values, result) - result = Block.new_at(val[0].pos ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 76) - def _reduce_21(val, _values, result) - result = NodeChain[val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 77) - def _reduce_22(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 81) - def _reduce_23(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 82) - def _reduce_24(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 86) - def _reduce_25(val, _values, result) - result = ExpressionStatement.new_at(val[0].pos, val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 87) - def _reduce_26(val, _values, result) - result = ExpressionStatement.new_at(val[0].pos ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 91) - def _reduce_27(val, _values, result) - result = If .new_at(val[0].pos, val[2], val[4] ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 92) - def _reduce_28(val, _values, result) - result = If .new_at(val[0].pos, val[2], val[4], val[6]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 93) - def _reduce_29(val, _values, result) - result = Switch.new_at(val[0].pos, val[2], val[4] ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 97) - def _reduce_30(val, _values, result) - result = While.new_at(val[0].pos, val[2], val[4] ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 98) - def _reduce_31(val, _values, result) - result = While.new_at(val[0].pos, val[4], val[1], :do => true ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 99) - def _reduce_32(val, _values, result) - result = For.new_at(val[0].pos, val[2], val[4], val[6], val[8]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 100) - def _reduce_33(val, _values, result) - result = For.new_at(val[0].pos, val[2], val[4], nil , val[7]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 101) - def _reduce_34(val, _values, result) - result = For.new_at(val[0].pos, val[2], nil , val[5], val[7]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 102) - def _reduce_35(val, _values, result) - result = For.new_at(val[0].pos, val[2], nil , nil , val[6]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 103) - def _reduce_36(val, _values, result) - result = For.new_at(val[0].pos, nil , val[3], val[5], val[7]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 104) - def _reduce_37(val, _values, result) - result = For.new_at(val[0].pos, nil , val[3], nil , val[6]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 105) - def _reduce_38(val, _values, result) - result = For.new_at(val[0].pos, nil , nil , val[4], val[6]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 106) - def _reduce_39(val, _values, result) - result = For.new_at(val[0].pos, nil , nil , nil , val[5]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 107) - def _reduce_40(val, _values, result) - result = For.new_at(val[0].pos, val[2], val[3], val[5], val[7]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 108) - def _reduce_41(val, _values, result) - result = For.new_at(val[0].pos, val[2], val[3], nil , val[6]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 109) - def _reduce_42(val, _values, result) - result = For.new_at(val[0].pos, val[2], nil , val[4], val[6]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 110) - def _reduce_43(val, _values, result) - result = For.new_at(val[0].pos, val[2], nil , nil , val[5]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 114) - def _reduce_44(val, _values, result) - result = Goto .new_at(val[0].pos, val[1].val) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 115) - def _reduce_45(val, _values, result) - result = Continue.new_at(val[0].pos ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 116) - def _reduce_46(val, _values, result) - result = Break .new_at(val[0].pos ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 117) - def _reduce_47(val, _values, result) - result = Return .new_at(val[0].pos, val[1] ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 118) - def _reduce_48(val, _values, result) - result = Return .new_at(val[0].pos ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 120) - def _reduce_49(val, _values, result) - result = Goto .new_at(val[0].pos, val[1].name) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 126) - def _reduce_50(val, _values, result) - result = make_declaration(val[0][0], val[0][1], val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 127) - def _reduce_51(val, _values, result) - result = make_declaration(val[0][0], val[0][1], NodeArray[]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 131) - def _reduce_52(val, _values, result) - val[1][1] << val[0][1]; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 132) - def _reduce_53(val, _values, result) - result = [val[0][0], [val[0][1]]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 133) - def _reduce_54(val, _values, result) - val[1][1] << val[0][1]; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 134) - def _reduce_55(val, _values, result) - result = [val[0][0], [val[0][1]]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 135) - def _reduce_56(val, _values, result) - val[1][1] << val[0][1]; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 136) - def _reduce_57(val, _values, result) - result = [val[0][0], [val[0][1]]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 137) - def _reduce_58(val, _values, result) - val[1][1] << val[0][1]; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 138) - def _reduce_59(val, _values, result) - result = [val[0][0], [val[0][1]]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 142) - def _reduce_60(val, _values, result) - result = NodeArray[val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 143) - def _reduce_61(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 147) - def _reduce_62(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 148) - def _reduce_63(val, _values, result) - val[0].init = val[2]; result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 152) - def _reduce_64(val, _values, result) - result = [val[0].pos, :typedef ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 153) - def _reduce_65(val, _values, result) - result = [val[0].pos, :extern ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 154) - def _reduce_66(val, _values, result) - result = [val[0].pos, :static ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 155) - def _reduce_67(val, _values, result) - result = [val[0].pos, :auto ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 156) - def _reduce_68(val, _values, result) - result = [val[0].pos, :register] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 160) - def _reduce_69(val, _values, result) - result = [val[0].pos, :void ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 161) - def _reduce_70(val, _values, result) - result = [val[0].pos, :char ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 162) - def _reduce_71(val, _values, result) - result = [val[0].pos, :short ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 163) - def _reduce_72(val, _values, result) - result = [val[0].pos, :int ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 164) - def _reduce_73(val, _values, result) - result = [val[0].pos, :long ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 165) - def _reduce_74(val, _values, result) - result = [val[0].pos, :float ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 166) - def _reduce_75(val, _values, result) - result = [val[0].pos, :double ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 167) - def _reduce_76(val, _values, result) - result = [val[0].pos, :signed ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 168) - def _reduce_77(val, _values, result) - result = [val[0].pos, :unsigned ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 169) - def _reduce_78(val, _values, result) - result = [val[0].pos, :_Bool ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 170) - def _reduce_79(val, _values, result) - result = [val[0].pos, :_Complex ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 171) - def _reduce_80(val, _values, result) - result = [val[0].pos, :_Imaginary] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 172) - def _reduce_81(val, _values, result) - result = [val[0].pos, val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 173) - def _reduce_82(val, _values, result) - result = [val[0].pos, val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 174) - def _reduce_83(val, _values, result) - result = [val[0].pos, val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 178) - def _reduce_84(val, _values, result) - result = val[0][1].new_at(val[0][0], val[1].val, val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 179) - def _reduce_85(val, _values, result) - result = val[0][1].new_at(val[0][0], nil , val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 180) - def _reduce_86(val, _values, result) - result = val[0][1].new_at(val[0][0], val[1].val, nil ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 182) - def _reduce_87(val, _values, result) - result = val[0][1].new_at(val[0][0], val[1].name, val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 183) - def _reduce_88(val, _values, result) - result = val[0][1].new_at(val[0][0], val[1].name, nil ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 187) - def _reduce_89(val, _values, result) - result = [val[0].pos, Struct] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 188) - def _reduce_90(val, _values, result) - result = [val[0].pos, Union ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 192) - def _reduce_91(val, _values, result) - result = NodeArray[val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 193) - def _reduce_92(val, _values, result) - val[0] << val[1]; result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 197) - def _reduce_93(val, _values, result) - result = make_declaration(val[0][0], val[0][1], val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 201) - def _reduce_94(val, _values, result) - val[1][1] << val[0][1]; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 202) - def _reduce_95(val, _values, result) - result = [val[0][0], [val[0][1]]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 203) - def _reduce_96(val, _values, result) - val[1][1] << val[0][1]; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 204) - def _reduce_97(val, _values, result) - result = [val[0][0], [val[0][1]]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 208) - def _reduce_98(val, _values, result) - result = NodeArray[val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 209) - def _reduce_99(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 213) - def _reduce_100(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 214) - def _reduce_101(val, _values, result) - result = val[0]; val[0].num_bits = val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 215) - def _reduce_102(val, _values, result) - result = Declarator.new_at(val[0].pos, :num_bits => val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 219) - def _reduce_103(val, _values, result) - result = Enum.new_at(val[0].pos, val[1].val, val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 220) - def _reduce_104(val, _values, result) - result = Enum.new_at(val[0].pos, nil , val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 221) - def _reduce_105(val, _values, result) - result = Enum.new_at(val[0].pos, val[1].val, val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 222) - def _reduce_106(val, _values, result) - result = Enum.new_at(val[0].pos, nil , val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 223) - def _reduce_107(val, _values, result) - result = Enum.new_at(val[0].pos, val[1].val, nil ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 225) - def _reduce_108(val, _values, result) - result = Enum.new_at(val[0].pos, val[1].name, val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 226) - def _reduce_109(val, _values, result) - result = Enum.new_at(val[0].pos, val[1].name, val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 227) - def _reduce_110(val, _values, result) - result = Enum.new_at(val[0].pos, val[1].name, nil ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 231) - def _reduce_111(val, _values, result) - result = NodeArray[val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 232) - def _reduce_112(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 236) - def _reduce_113(val, _values, result) - result = Enumerator.new_at(val[0].pos, val[0].val, nil ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 237) - def _reduce_114(val, _values, result) - result = Enumerator.new_at(val[0].pos, val[0].val, val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 241) - def _reduce_115(val, _values, result) - result = [val[0].pos, :const ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 242) - def _reduce_116(val, _values, result) - result = [val[0].pos, :restrict] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 243) - def _reduce_117(val, _values, result) - result = [val[0].pos, :volatile] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 247) - def _reduce_118(val, _values, result) - result = [val[0].pos, :inline] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 251) - def _reduce_119(val, _values, result) - result = add_decl_type(val[1], val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 252) - def _reduce_120(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 256) - def _reduce_121(val, _values, result) - result = Declarator.new_at(val[0].pos, nil, val[0].val) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 257) - def _reduce_122(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 258) - def _reduce_123(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 259) - def _reduce_124(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 260) - def _reduce_125(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos, nil, val[2])) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 261) - def _reduce_126(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 262) - def _reduce_127(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 263) - def _reduce_128(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 264) - def _reduce_129(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 265) - def _reduce_130(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 266) - def _reduce_131(val, _values, result) - result = add_decl_type(val[0], Array.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 267) - def _reduce_132(val, _values, result) - result = add_decl_type(val[0], Function.new_at(val[0].pos, nil, param_list(*val[2]), :var_args => val[2][1])) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 268) - def _reduce_133(val, _values, result) - result = add_decl_type(val[0], Function.new_at(val[0].pos, nil, val[2])) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 269) - def _reduce_134(val, _values, result) - result = add_decl_type(val[0], Function.new_at(val[0].pos )) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 273) - def _reduce_135(val, _values, result) - result = add_type_quals(Pointer.new_at(val[0].pos), val[1][1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 274) - def _reduce_136(val, _values, result) - result = Pointer.new_at(val[0].pos) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 275) - def _reduce_137(val, _values, result) - p = add_type_quals(Pointer.new_at(val[0].pos), val[1][1]); val[2].direct_type = p; result = val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 276) - def _reduce_138(val, _values, result) - p = Pointer.new_at(val[0].pos) ; val[1].direct_type = p; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 280) - def _reduce_139(val, _values, result) - result = [val[0][0], [val[0][1]]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 281) - def _reduce_140(val, _values, result) - val[0][1] << val[1][1]; result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 285) - def _reduce_141(val, _values, result) - result = [val[0], false] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 286) - def _reduce_142(val, _values, result) - result = [val[0], true ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 290) - def _reduce_143(val, _values, result) - result = NodeArray[val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 291) - def _reduce_144(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 295) - def _reduce_145(val, _values, result) - ind_type = val[1].indirect_type and ind_type.detach - result = make_parameter(val[0][0], val[0][1], ind_type, val[1].name) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 297) - def _reduce_146(val, _values, result) - result = make_parameter(val[0][0], val[0][1], val[1] , nil ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 298) - def _reduce_147(val, _values, result) - result = make_parameter(val[0][0], val[0][1], nil , nil ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 302) - def _reduce_148(val, _values, result) - result = NodeArray[Parameter.new_at(val[0].pos, nil, val[0].val)] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 303) - def _reduce_149(val, _values, result) - result = val[0] << Parameter.new_at(val[2].pos, nil, val[2].val) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 307) - def _reduce_150(val, _values, result) - val[1].direct_type = make_direct_type(val[0][0], val[0][1]); result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 308) - def _reduce_151(val, _values, result) - result = make_direct_type(val[0][0], val[0][1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 312) - def _reduce_152(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 313) - def _reduce_153(val, _values, result) - val[1].direct_type = val[0]; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 314) - def _reduce_154(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 318) - def _reduce_155(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 319) - def _reduce_156(val, _values, result) - val[0].direct_type = Array.new_at(val[0].pos, nil, val[2]); result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 320) - def _reduce_157(val, _values, result) - val[0].direct_type = Array.new_at(val[0].pos, nil, nil ); result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 321) - def _reduce_158(val, _values, result) - result = Array.new_at(val[0].pos, nil, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 322) - def _reduce_159(val, _values, result) - result = Array.new_at(val[0].pos ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 323) - def _reduce_160(val, _values, result) - val[0].direct_type = Array.new_at(val[0].pos); result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 324) - def _reduce_161(val, _values, result) - result = Array.new_at(val[0].pos) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 325) - def _reduce_162(val, _values, result) - val[0].direct_type = Function.new_at(val[0].pos, nil, param_list(*val[2]), val[2][1]); result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 326) - def _reduce_163(val, _values, result) - val[0].direct_type = Function.new_at(val[0].pos ); result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 327) - def _reduce_164(val, _values, result) - result = Function.new_at(val[0].pos, nil, param_list(*val[1]), val[1][1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 328) - def _reduce_165(val, _values, result) - result = Function.new_at(val[0].pos ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 334) - def _reduce_166(val, _values, result) - result = CustomType.new_at(val[0].pos, val[0].val) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 338) - def _reduce_167(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 339) - def _reduce_168(val, _values, result) - result = CompoundLiteral.new_at(val[0].pos, nil, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 340) - def _reduce_169(val, _values, result) - result = CompoundLiteral.new_at(val[0].pos, nil, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 344) - def _reduce_170(val, _values, result) - result = NodeArray[MemberInit.new_at(val[0][0] , val[0][1], val[1])] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 345) - def _reduce_171(val, _values, result) - result = NodeArray[MemberInit.new_at(val[0].pos, nil , val[0])] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 346) - def _reduce_172(val, _values, result) - result = val[0] << MemberInit.new_at(val[2][0] , val[2][1], val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 347) - def _reduce_173(val, _values, result) - result = val[0] << MemberInit.new_at(val[2].pos, nil , val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 351) - def _reduce_174(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 355) - def _reduce_175(val, _values, result) - result = val[0]; val[0][1] = NodeArray[val[0][1]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 356) - def _reduce_176(val, _values, result) - result = val[0]; val[0][1] << val[1][1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 360) - def _reduce_177(val, _values, result) - result = [val[1].pos, val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 361) - def _reduce_178(val, _values, result) - result = [val[1].pos, Member.new_at(val[1].pos, val[1].val)] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 367) - def _reduce_179(val, _values, result) - result = Variable.new_at(val[0].pos, val[0].val) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 368) - def _reduce_180(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 369) - def _reduce_181(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 371) - def _reduce_182(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 372) - def _reduce_183(val, _values, result) - block_expressions_enabled? or parse_error val[0].pos, "compound statement found where expression expected" - result = BlockExpression.new(val[1]); result.pos = val[0].pos - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 377) - def _reduce_184(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 378) - def _reduce_185(val, _values, result) - result = Index .new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 379) - def _reduce_186(val, _values, result) - result = Call .new_at(val[0].pos, val[0], val[2] ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 380) - def _reduce_187(val, _values, result) - result = Call .new_at(val[0].pos, val[0], NodeArray[]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 381) - def _reduce_188(val, _values, result) - result = Dot .new_at(val[0].pos, val[0], Member.new(val[2].val)) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 382) - def _reduce_189(val, _values, result) - result = Arrow .new_at(val[0].pos, val[0], Member.new(val[2].val)) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 383) - def _reduce_190(val, _values, result) - result = PostInc .new_at(val[0].pos, val[0] ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 384) - def _reduce_191(val, _values, result) - result = PostDec .new_at(val[0].pos, val[0] ) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 385) - def _reduce_192(val, _values, result) - result = CompoundLiteral.new_at(val[0].pos, val[1], val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 386) - def _reduce_193(val, _values, result) - result = CompoundLiteral.new_at(val[0].pos, val[1], val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 390) - def _reduce_194(val, _values, result) - result = NodeArray[val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 391) - def _reduce_195(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 395) - def _reduce_196(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 396) - def _reduce_197(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 400) - def _reduce_198(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 401) - def _reduce_199(val, _values, result) - result = PreInc.new_at(val[0].pos, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 402) - def _reduce_200(val, _values, result) - result = PreDec.new_at(val[0].pos, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 403) - def _reduce_201(val, _values, result) - result = val[0][0].new_at(val[0][1], val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 404) - def _reduce_202(val, _values, result) - result = Sizeof.new_at(val[0].pos, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 405) - def _reduce_203(val, _values, result) - result = Sizeof.new_at(val[0].pos, val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 409) - def _reduce_204(val, _values, result) - result = [Address , val[0].pos] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 410) - def _reduce_205(val, _values, result) - result = [Dereference, val[0].pos] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 411) - def _reduce_206(val, _values, result) - result = [Positive , val[0].pos] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 412) - def _reduce_207(val, _values, result) - result = [Negative , val[0].pos] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 413) - def _reduce_208(val, _values, result) - result = [BitNot , val[0].pos] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 414) - def _reduce_209(val, _values, result) - result = [Not , val[0].pos] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 418) - def _reduce_210(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 419) - def _reduce_211(val, _values, result) - result = Cast.new_at(val[0].pos, val[1], val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 423) - def _reduce_212(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 424) - def _reduce_213(val, _values, result) - result = Multiply.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 425) - def _reduce_214(val, _values, result) - result = Divide .new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 426) - def _reduce_215(val, _values, result) - result = Mod .new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 430) - def _reduce_216(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 431) - def _reduce_217(val, _values, result) - result = Add .new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 432) - def _reduce_218(val, _values, result) - result = Subtract.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 436) - def _reduce_219(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 437) - def _reduce_220(val, _values, result) - result = ShiftLeft .new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 438) - def _reduce_221(val, _values, result) - result = ShiftRight.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 442) - def _reduce_222(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 443) - def _reduce_223(val, _values, result) - result = Less.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 444) - def _reduce_224(val, _values, result) - result = More.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 445) - def _reduce_225(val, _values, result) - result = LessOrEqual.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 446) - def _reduce_226(val, _values, result) - result = MoreOrEqual.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 450) - def _reduce_227(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 451) - def _reduce_228(val, _values, result) - result = Equal .new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 452) - def _reduce_229(val, _values, result) - result = NotEqual.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 456) - def _reduce_230(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 457) - def _reduce_231(val, _values, result) - result = BitAnd.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 461) - def _reduce_232(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 462) - def _reduce_233(val, _values, result) - result = BitXor.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 466) - def _reduce_234(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 467) - def _reduce_235(val, _values, result) - result = BitOr.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 471) - def _reduce_236(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 472) - def _reduce_237(val, _values, result) - result = And.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 476) - def _reduce_238(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 477) - def _reduce_239(val, _values, result) - result = Or.new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 481) - def _reduce_240(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 482) - def _reduce_241(val, _values, result) - result = Conditional.new_at(val[0].pos, val[0], val[2], val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 486) - def _reduce_242(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 487) - def _reduce_243(val, _values, result) - result = val[1].new_at(val[0].pos, val[0], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 491) - def _reduce_244(val, _values, result) - result = Assign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 492) - def _reduce_245(val, _values, result) - result = MultiplyAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 493) - def _reduce_246(val, _values, result) - result = DivideAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 494) - def _reduce_247(val, _values, result) - result = ModAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 495) - def _reduce_248(val, _values, result) - result = AddAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 496) - def _reduce_249(val, _values, result) - result = SubtractAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 497) - def _reduce_250(val, _values, result) - result = ShiftLeftAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 498) - def _reduce_251(val, _values, result) - result = ShiftRightAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 499) - def _reduce_252(val, _values, result) - result = BitAndAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 500) - def _reduce_253(val, _values, result) - result = BitXorAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 501) - def _reduce_254(val, _values, result) - result = BitOrAssign - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 505) - def _reduce_255(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 507) - def _reduce_256(val, _values, result) - if val[0].is_a? Comma - if val[2].is_a? Comma - val[0].exprs.push(*val[2].exprs) - else - val[0].exprs << val[2] - end - result = val[0] - else - if val[2].is_a? Comma - val[2].exprs.unshift(val[0]) - val[2].pos = val[0].pos - result = val[2] - else - result = Comma.new_at(val[0].pos, NodeArray[val[0], val[2]]) - end - end - - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 527) - def _reduce_257(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 542) - def _reduce_258(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 546) - def _reduce_259(val, _values, result) - result = val[0].val; result.pos = val[0].pos - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 547) - def _reduce_260(val, _values, result) - result = val[0].val; result.pos = val[0].pos - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 550) - def _reduce_261(val, _values, result) - result = val[0].val; result.pos = val[0].pos - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 554) - def _reduce_262(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 559) - def _reduce_263(val, _values, result) - val[0].val << val[1].val.val; result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'cast.y', 560) - def _reduce_264(val, _values, result) - result = val[0].val; result.pos = val[0].pos - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module C diff --git a/test/racc/regress/csspool b/test/racc/regress/csspool deleted file mode 100644 index a3d14a9b34..0000000000 --- a/test/racc/regress/csspool +++ /dev/null @@ -1,2314 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' -module CSSPool - module CSS - class Parser < Racc::Parser - -module_eval(<<'...end csspool.y/module_eval...', 'csspool.y', 670) - -def numeric thing - thing = thing.gsub(/[^\d.]/, '') - Integer(thing) rescue Float(thing) -end - -def interpret_identifier s - interpret_escapes s -end - -def interpret_uri s - interpret_escapes s.match(/^url\((.*)\)$/mui)[1].strip.match(/^(['"]?)((?:\\.|.)*)\1$/mu)[2] -end - -def interpret_string_no_quote s - interpret_escapes s.match(/^(.*)\)$/mu)[1].strip.match(/^(['"]?)((?:\\.|.)*)\1$/mu)[2] -end - -def interpret_string s - interpret_escapes s.match(/^(['"])((?:\\.|.)*)\1$/mu)[2] -end - -def interpret_escapes s - token_exp = /\\(?:([0-9a-fA-F]{1,6}(?:\r\n|\s)?)|(.))/mu - return s.gsub(token_exp) do |escape_sequence| - if !$1.nil? - code = $1.chomp.to_i 16 - code = 0xFFFD if code > 0x10FFFF - next [code].pack('U') - end - next '' if $2 == "\n" - next $2 - end -end - -# override racc's on_error so we can have context in our error messages -def on_error(t, val, vstack) - errcontext = (@ss.pre_match[-10..-1] || @ss.pre_match) + - @ss.matched + @ss.post_match[0..9] - line_number = @ss.pre_match.lines.count - raise ParseError, sprintf("parse error on value %s (%s) " + - "on line %s around \"%s\"", - val.inspect, token_to_str(t) || '?', - line_number, errcontext) -end - -def before_pos(val) - # don't include leading whitespace - return current_pos - val.last.length + val.last[/\A\s*/].size -end - -def after_pos(val) - # don't include trailing whitespace - return current_pos - val.last[/\s*\z/].size -end - -# charpos will work with multibyte strings but is not available until ruby 2 -def current_pos - @ss.respond_to?('charpos') ? @ss.charpos : @ss.pos -end -...end csspool.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 9, 10, 137, 129, 37, 31, 55, 139, 130, 39, - 45, 47, 45, 47, 123, 9, 10, 103, 3, 37, - 31, 98, 229, 103, 39, 45, 47, 230, 124, 125, - 224, 20, 113, 56, 37, 31, 23, 114, 104, 39, - 45, 47, 245, 27, 104, 11, 20, 126, 48, 25, - 48, 23, 242, 29, 138, 244, 38, 46, 27, 46, - 11, 108, 113, 48, 25, 9, 10, 114, 29, 37, - 31, 38, 46, 223, 39, 45, 47, 49, 48, 115, - 9, 10, 108, 113, 37, 31, 38, 46, 114, 39, - 45, 47, 55, 339, 243, 155, 20, 108, 113, 37, - 31, 23, 107, 114, 39, 45, 47, 231, 27, 115, - 11, 20, 232, 48, 25, 55, 23, 59, 29, 56, - 344, 38, 46, 27, 340, 11, 20, 53, 48, 25, - 115, 23, 345, 29, 37, 31, 38, 46, 27, 39, - 45, 47, 56, 48, 25, 115, -28, 105, 29, 37, - 31, 38, 46, 116, 39, 45, 47, 250, 75, 120, - 251, 20, 108, 113, 37, 31, 23, 118, 114, 39, - 45, 47, 121, 27, 74, 73, 20, 313, 48, 25, - 314, 23, 128, 29, 108, 113, 38, 46, 27, 215, - 114, 20, 131, 48, 25, 75, 23, 136, 29, 37, - 64, 38, 46, 27, 39, 45, 47, 92, 48, 25, - 115, 74, 73, 29, 37, 31, 38, 46, 77, 39, - 45, 47, 148, 94, 103, 156, 20, -89, 83, 37, - 31, 23, 115, 87, 39, 45, 47, 160, 27, 85, - 153, 20, 151, 48, 25, 104, 23, 84, 29, 157, - 158, 38, 46, 27, 163, 252, 20, 151, 48, 25, - 201, 23, 164, 29, 37, 31, 38, 46, 27, 39, - 45, 47, 203, 48, 25, 188, 202, 59, 29, 37, - 165, 38, 46, 187, 39, 45, 47, 201, 204, 166, - 184, 83, 288, 198, 287, 190, 197, 192, 191, 193, - 194, 195, 85, 202, 37, 45, 47, 37, 48, 39, - 45, 47, 39, 45, 47, 167, 38, 46, 168, 83, - 170, 113, 210, 48, 181, 186, 114, 185, 196, 37, - 85, 38, 46, 92, 39, 45, 47, 203, 84, 150, - 152, 151, 289, 48, 290, 292, 163, 291, 48, 94, - -33, 48, 46, 204, 169, 199, 38, 46, 37, 38, - 46, 200, -33, 39, 45, 47, 92, 188, 115, 59, - 294, 258, 293, 48, 296, 187, 295, 298, 260, 297, - 212, 38, 46, 83, 216, 198, 259, 190, 197, 192, - 191, 193, 194, 195, 85, 45, 47, 45, 47, 45, - 47, 217, 48, 218, 219, 188, 108, 59, 285, 108, - 38, 46, 170, 187, 225, 226, 181, 186, 233, 185, - 196, 83, 129, 198, 234, 190, 197, 192, 191, 193, - 194, 195, 85, 48, 163, 48, 255, 48, 256, 155, - 263, 169, 46, 188, 46, 59, 46, 264, 168, 265, - 170, 187, 266, 92, 181, 186, 92, 185, 196, 83, - 92, 198, 92, 190, 197, 192, 191, 193, 194, 195, - 85, 198, 278, 190, 197, 192, 191, 193, 194, 195, - 279, 188, 281, 59, 241, 235, 236, 237, 170, 187, - 286, 229, 181, 186, 231, 185, 196, 83, 163, 198, - 300, 190, 197, 192, 191, 193, 194, 195, 85, 301, - 302, 238, 239, 240, 303, 306, 307, 255, 141, 188, - 75, 59, 322, 163, 185, 168, 170, 187, 312, 317, - 181, 186, 143, 185, 196, 83, 319, 198, 323, 190, - 197, 192, 191, 193, 194, 195, 85, 324, 325, 145, - 326, 327, 328, 329, 330, 331, 144, 188, 146, 59, - 147, 332, 142, 333, 170, 187, 334, 306, 181, 186, - 163, 185, 196, 83, 338, 198, 163, 190, 197, 192, - 191, 193, 194, 195, 85, 346, 319, 319, 163, 351, - 306, 163, 319, 357, 359, 188, nil, 59, nil, nil, - nil, nil, 170, 187, nil, nil, 181, 186, nil, 185, - 196, 83, nil, 198, nil, 190, 197, 192, 191, 193, - 194, 195, 85, 272, nil, 83, nil, 198, nil, 190, - 197, 192, 191, 193, 194, 195, nil, nil, nil, nil, - 170, nil, nil, nil, 181, 186, nil, 185, 196, 272, - nil, 83, nil, 198, nil, 190, 197, 192, 191, 193, - 194, 195, 272, nil, 83, nil, 198, nil, 190, 197, - 192, 191, 193, 194, 195, 272, nil, 83, nil, 198, - nil, 190, 197, 192, 191, 193, 194, 195, 272, nil, - 83, nil, 198, nil, 190, 197, 192, 191, 193, 194, - 195, 272, nil, 83, nil, 198, nil, 190, 197, 192, - 191, 193, 194, 195 ] - -racc_action_check = [ - 2, 2, 47, 38, 2, 2, 10, 47, 38, 2, - 2, 2, 35, 35, 34, 5, 5, 26, 1, 5, - 5, 26, 128, 217, 5, 5, 5, 128, 34, 34, - 112, 2, 210, 10, 31, 31, 2, 210, 26, 31, - 31, 31, 143, 2, 217, 2, 5, 34, 2, 2, - 35, 5, 142, 2, 47, 143, 2, 2, 5, 35, - 5, 110, 110, 5, 5, 6, 6, 110, 5, 6, - 6, 5, 5, 112, 6, 6, 6, 3, 31, 210, - 7, 7, 221, 221, 7, 7, 31, 31, 221, 7, - 7, 7, 58, 309, 142, 58, 6, 28, 28, 12, - 12, 6, 28, 28, 12, 12, 12, 131, 6, 110, - 6, 7, 131, 6, 6, 11, 7, 11, 6, 58, - 315, 6, 6, 7, 309, 7, 12, 9, 7, 7, - 221, 12, 315, 7, 13, 13, 7, 7, 12, 13, - 13, 13, 11, 12, 12, 28, 20, 27, 12, 14, - 14, 12, 12, 29, 14, 14, 14, 149, 20, 32, - 149, 13, 30, 30, 15, 15, 13, 30, 30, 15, - 15, 15, 33, 13, 20, 20, 14, 269, 13, 13, - 269, 14, 37, 13, 100, 100, 13, 13, 14, 100, - 100, 15, 39, 14, 14, 157, 15, 46, 14, 19, - 19, 14, 14, 15, 19, 19, 19, 25, 15, 15, - 30, 157, 157, 15, 21, 21, 15, 15, 21, 21, - 21, 21, 53, 25, 99, 67, 19, 99, 22, 24, - 24, 19, 100, 24, 24, 24, 24, 71, 19, 22, - 57, 21, 57, 19, 19, 99, 21, 22, 19, 70, - 70, 19, 19, 21, 75, 154, 24, 154, 21, 21, - 90, 24, 76, 21, 64, 64, 21, 21, 24, 64, - 64, 64, 91, 24, 24, 83, 90, 83, 24, 121, - 78, 24, 24, 83, 121, 121, 121, 206, 91, 79, - 83, 83, 235, 83, 235, 83, 83, 83, 83, 83, - 83, 83, 83, 206, 122, 41, 41, 144, 64, 122, - 122, 122, 144, 144, 144, 80, 64, 64, 81, 166, - 83, 92, 92, 121, 83, 83, 92, 83, 83, 146, - 166, 121, 121, 92, 146, 146, 146, 207, 166, 54, - 54, 54, 236, 41, 236, 237, 270, 237, 122, 92, - 270, 144, 41, 207, 82, 86, 122, 122, 302, 144, - 144, 88, 270, 302, 302, 302, 94, 171, 92, 171, - 238, 171, 238, 146, 239, 171, 239, 240, 171, 240, - 97, 146, 146, 171, 101, 171, 171, 171, 171, 171, - 171, 171, 171, 171, 171, 42, 42, 43, 43, 44, - 44, 102, 302, 105, 106, 223, 108, 223, 223, 109, - 302, 302, 171, 223, 114, 117, 171, 171, 137, 171, - 171, 223, 138, 223, 139, 223, 223, 223, 223, 223, - 223, 223, 223, 42, 147, 43, 161, 44, 162, 172, - 175, 176, 42, 261, 43, 261, 44, 177, 179, 183, - 223, 261, 185, 201, 223, 223, 202, 223, 223, 261, - 203, 261, 204, 261, 261, 261, 261, 261, 261, 261, - 261, 189, 208, 189, 189, 189, 189, 189, 189, 189, - 209, 285, 214, 285, 140, 140, 140, 140, 261, 285, - 224, 233, 261, 261, 234, 261, 261, 285, 243, 285, - 245, 285, 285, 285, 285, 285, 285, 285, 285, 246, - 247, 140, 140, 140, 248, 249, 251, 254, 48, 286, - 255, 286, 286, 256, 266, 267, 285, 286, 268, 280, - 285, 285, 48, 285, 285, 286, 284, 286, 287, 286, - 286, 286, 286, 286, 286, 286, 286, 288, 289, 48, - 290, 291, 292, 293, 294, 295, 48, 322, 48, 322, - 48, 296, 48, 297, 286, 322, 298, 299, 286, 286, - 304, 286, 286, 322, 306, 322, 312, 322, 322, 322, - 322, 322, 322, 322, 322, 316, 320, 321, 335, 337, - 338, 340, 349, 350, 358, 353, nil, 353, nil, nil, - nil, nil, 322, 353, nil, nil, 322, 322, nil, 322, - 322, 353, nil, 353, nil, 353, 353, 353, 353, 353, - 353, 353, 353, 186, nil, 186, nil, 186, nil, 186, - 186, 186, 186, 186, 186, 186, nil, nil, nil, nil, - 353, nil, nil, nil, 353, 353, nil, 353, 353, 272, - nil, 272, nil, 272, nil, 272, 272, 272, 272, 272, - 272, 272, 313, nil, 313, nil, 313, nil, 313, 313, - 313, 313, 313, 313, 313, 314, nil, 314, nil, 314, - nil, 314, 314, 314, 314, 314, 314, 314, 344, nil, - 344, nil, 344, nil, 344, 344, 344, 344, 344, 344, - 344, 345, nil, 345, nil, 345, nil, 345, 345, 345, - 345, 345, 345, 345 ] - -racc_action_pointer = [ - nil, 18, -2, 77, nil, 13, 63, 78, nil, 123, - 2, 111, 93, 128, 143, 158, nil, nil, nil, 193, - 140, 208, 208, nil, 223, 189, 11, 141, 92, 144, - 157, 28, 150, 164, 7, 0, nil, 124, -3, 134, - nil, 293, 383, 385, 387, nil, 191, -4, 512, nil, - nil, nil, nil, 217, 334, nil, nil, 235, 88, nil, - nil, nil, nil, nil, 258, nil, nil, 215, nil, nil, - 241, 231, nil, nil, nil, 247, 252, nil, 271, 281, - 308, 311, 347, 271, nil, nil, 345, nil, 352, nil, - 224, 236, 315, nil, 348, nil, nil, 370, nil, 218, - 179, 375, 393, nil, nil, 394, 394, nil, 401, 404, - 56, nil, 23, nil, 408, nil, nil, 405, nil, nil, - nil, 273, 298, nil, nil, nil, nil, nil, 16, nil, - nil, 101, nil, nil, nil, nil, nil, 360, 416, 366, - 470, nil, 46, 36, 301, nil, 323, 427, nil, 152, - nil, nil, nil, nil, 250, nil, nil, 177, nil, nil, - nil, 400, 432, nil, nil, nil, 299, nil, nil, nil, - nil, 363, 432, nil, nil, 433, 434, 440, nil, 441, - nil, nil, nil, 430, nil, 444, 605, nil, nil, 449, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 435, 438, 442, 444, nil, 251, 301, 453, 461, - 26, nil, nil, nil, 472, nil, nil, 17, nil, nil, - nil, 77, nil, 401, 440, nil, nil, nil, nil, nil, - nil, nil, nil, 485, 488, 288, 338, 341, 366, 370, - 373, nil, nil, 491, nil, 481, 490, 502, 495, 509, - nil, 510, nil, nil, 481, 502, 516, nil, nil, nil, - nil, 439, nil, nil, nil, nil, 468, 518, 509, 155, - 339, nil, 631, nil, nil, nil, nil, nil, nil, nil, - 510, nil, nil, nil, 504, 477, 515, 524, 533, 534, - 536, 537, 538, 539, 540, 541, 547, 549, 552, 561, - nil, nil, 352, nil, 563, nil, 566, nil, nil, 74, - nil, nil, 569, 644, 657, 109, 566, nil, nil, nil, - 554, 555, 553, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 581, nil, 570, 584, nil, - 584, nil, nil, nil, 670, 683, nil, nil, nil, 560, - 574, nil, nil, 591, nil, nil, nil, nil, 575, nil ] - -racc_action_default = [ - -1, -229, -10, -229, -2, -6, -7, -8, -9, -229, - -229, -229, -41, -42, -43, -44, -45, -46, -47, -33, - -23, -229, -229, -55, -229, -229, -89, -229, -229, -229, - -229, -229, -229, -103, -105, -111, -112, -115, -229, -120, - -119, -124, -125, -126, -127, -132, -229, -229, -229, 360, - -3, -4, -5, -229, -229, -15, -16, -229, -229, -228, - -37, -38, -39, -40, -32, -48, -49, -229, -99, -21, - -229, -229, -35, -26, -27, -33, -229, -53, -229, -57, - -58, -59, -60, -229, -198, -214, -229, -62, -229, -64, - -65, -66, -229, -71, -229, -73, -74, -229, -82, -85, - -229, -229, -91, -92, -93, -229, -229, -95, -160, -165, - -166, -167, -229, -174, -229, -176, -96, -229, -98, -100, - -101, -229, -229, -106, -107, -108, -109, -110, -229, -117, - -121, -229, -128, -129, -130, -131, -133, -115, -229, -229, - -229, -147, -229, -229, -229, -152, -229, -33, -11, -229, - -13, -14, -20, -18, -229, -227, -50, -28, -51, -35, - -29, -25, -229, -32, -52, -54, -229, -197, -194, -213, - -36, -182, -183, -184, -185, -186, -187, -188, -189, -190, - -191, -192, -193, -229, -196, -200, -229, -212, -216, -229, - -218, -219, -220, -221, -222, -223, -224, -225, -226, -61, - -63, -229, -229, -229, -229, -67, -68, -69, -229, -229, - -229, -72, -81, -84, -229, -87, -88, -89, -83, -94, - -161, -164, -163, -229, -229, -175, -97, -102, -104, -116, - -123, -118, -122, -229, -229, -229, -229, -229, -229, -229, - -229, -146, -148, -33, -149, -229, -229, -114, -229, -156, - -12, -229, -17, -22, -24, -229, -33, -56, -177, -178, - -179, -229, -181, -215, -211, -195, -229, -209, -229, -202, - -205, -208, -229, -217, -76, -78, -75, -77, -70, -79, - -229, -86, -90, -162, -173, -229, -229, -229, -229, -229, - -229, -229, -229, -229, -229, -229, -229, -229, -229, -156, - -150, -151, -229, -153, -33, -157, -158, -19, -34, -229, - -180, -199, -33, -229, -229, -229, -229, -80, -168, -172, - -173, -173, -229, -134, -135, -136, -137, -138, -139, -140, - -141, -142, -143, -144, -145, -33, -113, -229, -229, -30, - -33, -201, -203, -204, -229, -229, -210, -169, -170, -173, - -229, -154, -159, -229, -206, -207, -171, -155, -229, -31 ] - -racc_goto_table = [ - 81, 248, 183, 68, 106, 91, 117, 271, 78, 246, - 273, 247, 82, 69, 209, 161, 97, 89, 268, 304, - 90, 119, 54, 57, 220, 221, 318, 60, 61, 62, - 63, 354, 355, 1, 65, 127, 76, 2, 149, 86, - 58, 132, 133, 134, 135, 4, 70, 159, 50, 51, - 52, 308, 67, 66, 119, 88, 208, 282, 227, 162, - 228, 122, 347, 348, 140, 352, 261, 311, nil, 335, - 154, nil, 207, nil, 211, nil, 214, nil, nil, nil, - nil, nil, nil, nil, 205, nil, 222, 206, nil, 213, - 262, 356, nil, 271, nil, nil, nil, nil, nil, nil, - nil, nil, 254, nil, 316, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 249, 280, nil, 271, 271, nil, nil, nil, nil, - nil, nil, 284, nil, 81, 342, 343, nil, nil, nil, - 253, nil, 257, nil, nil, nil, 82, 336, nil, nil, - nil, nil, nil, nil, 267, 271, 271, 247, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 310, 274, 275, 276, 277, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 283, nil, nil, - nil, nil, nil, nil, 320, 321, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 299, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 309, 349, nil, nil, nil, nil, nil, nil, nil, nil, - 267, nil, nil, nil, 315, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 358, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 337, nil, - nil, 267, 267, nil, nil, nil, 341, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 350, - nil, nil, 267, 267, 353 ] - -racc_goto_check = [ - 35, 62, 18, 17, 51, 41, 51, 77, 32, 58, - 77, 58, 36, 12, 46, 15, 48, 39, 82, 68, - 40, 55, 8, 8, 70, 70, 73, 7, 7, 7, - 7, 84, 84, 1, 7, 61, 7, 3, 9, 7, - 10, 61, 61, 61, 61, 2, 11, 14, 2, 2, - 2, 16, 27, 28, 55, 38, 42, 52, 56, 17, - 57, 59, 73, 73, 63, 69, 74, 81, nil, 68, - 8, nil, 41, nil, 41, nil, 51, nil, nil, nil, - nil, nil, nil, nil, 39, nil, 51, 40, nil, 48, - 18, 73, nil, 77, nil, nil, nil, nil, nil, nil, - nil, nil, 15, nil, 82, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 17, 46, nil, 77, 77, nil, nil, nil, nil, - nil, nil, 18, nil, 35, 82, 82, nil, nil, nil, - 12, nil, 32, nil, nil, nil, 36, 62, nil, nil, - nil, nil, nil, nil, 35, 77, 77, 58, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 18, 41, 41, 41, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 51, nil, nil, - nil, nil, nil, nil, 18, 18, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 17, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 17, 18, nil, nil, nil, nil, nil, nil, nil, nil, - 35, nil, nil, nil, 17, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 18, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 17, nil, - nil, 35, 35, nil, nil, nil, 17, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 17, - nil, nil, 35, 35, 17 ] - -racc_goto_pointer = [ - nil, 33, 43, 37, nil, nil, nil, 15, 12, -16, - 29, 26, -7, nil, -24, -57, -204, -16, -81, nil, - nil, nil, nil, nil, nil, nil, nil, 33, 34, nil, - nil, nil, -14, nil, nil, -22, -10, nil, 30, -8, - -5, -20, -36, nil, nil, nil, -78, nil, -10, nil, - nil, -24, -160, nil, nil, -10, -63, -62, -135, 27, - nil, 0, -145, 17, nil, nil, nil, nil, -230, -273, - -84, nil, nil, -258, -105, nil, nil, -179, nil, nil, - nil, -199, -168, nil, -313, nil ] - -racc_goto_default = [ - nil, nil, nil, nil, 5, 6, 7, 8, nil, nil, - 172, nil, nil, 71, nil, nil, 72, nil, nil, 180, - 12, 13, 14, 15, 16, 17, 18, nil, nil, 19, - 21, 22, nil, 79, 80, 179, 176, 24, nil, nil, - nil, nil, nil, 93, 95, 96, 111, 26, nil, 99, - 100, nil, 101, 102, 28, 30, 32, 33, 34, nil, - 35, 36, nil, 40, 41, 42, 43, 44, nil, 305, - 110, 109, 112, nil, nil, 171, 173, 174, 175, 177, - 178, 182, nil, 269, 270, 189 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 0, 63, :_reduce_1, - 2, 61, :_reduce_2, - 2, 62, :_reduce_none, - 2, 62, :_reduce_none, - 2, 62, :_reduce_none, - 1, 62, :_reduce_none, - 1, 62, :_reduce_none, - 1, 62, :_reduce_none, - 1, 62, :_reduce_none, - 0, 62, :_reduce_none, - 3, 64, :_reduce_11, - 4, 65, :_reduce_12, - 3, 65, :_reduce_13, - 2, 68, :_reduce_none, - 1, 68, :_reduce_15, - 1, 68, :_reduce_16, - 4, 66, :_reduce_17, - 3, 66, :_reduce_18, - 3, 69, :_reduce_19, - 1, 69, :_reduce_20, - 1, 71, :_reduce_21, - 3, 71, :_reduce_22, - 0, 71, :_reduce_23, - 3, 72, :_reduce_24, - 2, 72, :_reduce_25, - 1, 73, :_reduce_26, - 1, 73, :_reduce_27, - 0, 73, :_reduce_28, - 1, 74, :_reduce_29, - 5, 76, :_reduce_30, - 8, 76, :_reduce_31, - 1, 77, :_reduce_32, - 0, 77, :_reduce_33, - 3, 75, :_reduce_34, - 0, 75, :_reduce_35, - 1, 79, :_reduce_36, - 2, 67, :_reduce_none, - 2, 67, :_reduce_none, - 2, 67, :_reduce_none, - 2, 67, :_reduce_none, - 1, 67, :_reduce_none, - 1, 67, :_reduce_none, - 1, 67, :_reduce_none, - 1, 67, :_reduce_none, - 1, 81, :_reduce_none, - 1, 81, :_reduce_none, - 1, 81, :_reduce_none, - 1, 87, :_reduce_none, - 1, 87, :_reduce_none, - 3, 84, :_reduce_50, - 3, 89, :_reduce_51, - 3, 85, :_reduce_52, - 2, 85, :_reduce_53, - 3, 90, :_reduce_54, - 1, 91, :_reduce_55, - 3, 92, :_reduce_56, - 1, 92, :_reduce_57, - 1, 93, :_reduce_none, - 1, 93, :_reduce_none, - 1, 93, :_reduce_none, - 3, 86, :_reduce_61, - 2, 86, :_reduce_62, - 3, 97, :_reduce_63, - 1, 98, :_reduce_64, - 1, 98, :_reduce_65, - 1, 98, :_reduce_66, - 1, 102, :_reduce_67, - 1, 102, :_reduce_68, - 1, 102, :_reduce_69, - 3, 101, :_reduce_70, - 1, 101, :_reduce_71, - 2, 99, :_reduce_72, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 3, 104, :_reduce_75, - 3, 104, :_reduce_76, - 3, 105, :_reduce_77, - 3, 105, :_reduce_78, - 3, 103, :_reduce_79, - 4, 103, :_reduce_80, - 3, 82, :_reduce_none, - 2, 82, :_reduce_none, - 3, 107, :_reduce_83, - 2, 108, :_reduce_none, - 1, 108, :_reduce_none, - 3, 109, :_reduce_86, - 2, 109, :_reduce_87, - 2, 110, :_reduce_88, - 0, 112, :_reduce_none, - 3, 112, :_reduce_90, - 1, 112, :_reduce_none, - 1, 113, :_reduce_none, - 1, 113, :_reduce_93, - 3, 83, :_reduce_94, - 2, 83, :_reduce_95, - 2, 114, :_reduce_96, - 3, 80, :_reduce_97, - 2, 80, :_reduce_98, - 1, 88, :_reduce_99, - 2, 115, :_reduce_100, - 2, 115, :_reduce_101, - 3, 116, :_reduce_102, - 1, 116, :_reduce_103, - 3, 117, :_reduce_104, - 1, 117, :_reduce_none, - 1, 119, :_reduce_106, - 1, 119, :_reduce_107, - 1, 119, :_reduce_108, - 1, 119, :_reduce_109, - 2, 118, :_reduce_110, - 1, 118, :_reduce_111, - 1, 118, :_reduce_112, - 3, 122, :_reduce_113, - 1, 122, :_reduce_none, - 1, 123, :_reduce_115, - 3, 123, :_reduce_116, - 2, 123, :_reduce_117, - 3, 123, :_reduce_118, - 1, 120, :_reduce_119, - 1, 120, :_reduce_120, - 2, 120, :_reduce_121, - 3, 120, :_reduce_122, - 3, 120, :_reduce_123, - 1, 121, :_reduce_124, - 1, 121, :_reduce_125, - 1, 121, :_reduce_126, - 1, 121, :_reduce_127, - 2, 121, :_reduce_128, - 2, 121, :_reduce_129, - 2, 121, :_reduce_130, - 2, 121, :_reduce_131, - 1, 124, :_reduce_132, - 2, 125, :_reduce_133, - 5, 126, :_reduce_134, - 5, 126, :_reduce_135, - 5, 126, :_reduce_136, - 5, 126, :_reduce_137, - 5, 126, :_reduce_138, - 5, 126, :_reduce_139, - 5, 126, :_reduce_140, - 5, 126, :_reduce_141, - 5, 126, :_reduce_142, - 5, 126, :_reduce_143, - 5, 126, :_reduce_144, - 5, 126, :_reduce_145, - 3, 126, :_reduce_146, - 2, 127, :_reduce_147, - 3, 127, :_reduce_148, - 3, 127, :_reduce_149, - 4, 127, :_reduce_150, - 4, 127, :_reduce_151, - 2, 127, :_reduce_152, - 4, 127, :_reduce_153, - 6, 127, :_reduce_154, - 7, 127, :_reduce_155, - 0, 128, :_reduce_none, - 1, 128, :_reduce_none, - 1, 129, :_reduce_none, - 3, 129, :_reduce_none, - 1, 130, :_reduce_none, - 2, 130, :_reduce_none, - 3, 111, :_reduce_none, - 2, 111, :_reduce_none, - 2, 111, :_reduce_none, - 1, 111, :_reduce_none, - 1, 111, :_reduce_none, - 1, 131, :_reduce_167, - 4, 106, :_reduce_168, - 5, 106, :_reduce_169, - 5, 106, :_reduce_170, - 6, 106, :_reduce_171, - 1, 133, :_reduce_172, - 0, 133, :_reduce_173, - 1, 132, :_reduce_174, - 2, 132, :_reduce_175, - 1, 132, :_reduce_176, - 1, 134, :_reduce_none, - 1, 134, :_reduce_none, - 1, 134, :_reduce_none, - 3, 78, :_reduce_180, - 2, 78, :_reduce_181, - 1, 78, :_reduce_182, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 1, 135, :_reduce_none, - 2, 95, :_reduce_194, - 3, 95, :_reduce_195, - 2, 95, :_reduce_196, - 2, 94, :_reduce_197, - 1, 94, :_reduce_198, - 3, 141, :_reduce_none, - 1, 141, :_reduce_none, - 4, 140, :_reduce_201, - 1, 142, :_reduce_none, - 3, 142, :_reduce_203, - 3, 142, :_reduce_204, - 1, 143, :_reduce_none, - 4, 143, :_reduce_206, - 4, 143, :_reduce_207, - 1, 144, :_reduce_208, - 1, 144, :_reduce_209, - 3, 144, :_reduce_210, - 2, 139, :_reduce_211, - 1, 139, :_reduce_212, - 2, 96, :_reduce_213, - 1, 96, :_reduce_214, - 2, 138, :_reduce_215, - 1, 138, :_reduce_216, - 2, 137, :_reduce_217, - 1, 137, :_reduce_218, - 1, 137, :_reduce_219, - 1, 137, :_reduce_220, - 1, 137, :_reduce_221, - 1, 137, :_reduce_222, - 1, 137, :_reduce_223, - 1, 136, :_reduce_224, - 1, 145, :_reduce_225, - 1, 145, :_reduce_226, - 2, 70, :_reduce_227, - 1, 70, :_reduce_228 ] - -racc_reduce_n = 229 - -racc_shift_n = 360 - -racc_token_table = { - false => 0, - :error => 1, - :CHARSET_SYM => 2, - :IMPORT_SYM => 3, - :STRING => 4, - :SEMI => 5, - :IDENT => 6, - :S => 7, - :COMMA => 8, - :LBRACE => 9, - :RBRACE => 10, - :STAR => 11, - :HASH => 12, - :LSQUARE => 13, - :RSQUARE => 14, - :EQUAL => 15, - :INCLUDES => 16, - :DASHMATCH => 17, - :LPAREN => 18, - :RPAREN => 19, - :FUNCTION => 20, - :GREATER => 21, - :PLUS => 22, - :SLASH => 23, - :NUMBER => 24, - :MINUS => 25, - :LENGTH => 26, - :PERCENTAGE => 27, - :ANGLE => 28, - :TIME => 29, - :FREQ => 30, - :URI => 31, - :IMPORTANT_SYM => 32, - :MEDIA_SYM => 33, - :NOT => 34, - :ONLY => 35, - :AND => 36, - :NTH_PSEUDO_CLASS => 37, - :DOCUMENT_QUERY_SYM => 38, - :FUNCTION_NO_QUOTE => 39, - :TILDE => 40, - :PREFIXMATCH => 41, - :SUFFIXMATCH => 42, - :SUBSTRINGMATCH => 43, - :NOT_PSEUDO_CLASS => 44, - :KEYFRAMES_SYM => 45, - :MATCHES_PSEUDO_CLASS => 46, - :NAMESPACE_SYM => 47, - :MOZ_PSEUDO_ELEMENT => 48, - :RESOLUTION => 49, - :COLON => 50, - :SUPPORTS_SYM => 51, - :OR => 52, - :VARIABLE_NAME => 53, - :CALC_SYM => 54, - :FONTFACE_SYM => 55, - :UNICODE_RANGE => 56, - :RATIO => 57, - "|" => 58, - "." => 59 } - -racc_nt_base = 60 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "CHARSET_SYM", - "IMPORT_SYM", - "STRING", - "SEMI", - "IDENT", - "S", - "COMMA", - "LBRACE", - "RBRACE", - "STAR", - "HASH", - "LSQUARE", - "RSQUARE", - "EQUAL", - "INCLUDES", - "DASHMATCH", - "LPAREN", - "RPAREN", - "FUNCTION", - "GREATER", - "PLUS", - "SLASH", - "NUMBER", - "MINUS", - "LENGTH", - "PERCENTAGE", - "ANGLE", - "TIME", - "FREQ", - "URI", - "IMPORTANT_SYM", - "MEDIA_SYM", - "NOT", - "ONLY", - "AND", - "NTH_PSEUDO_CLASS", - "DOCUMENT_QUERY_SYM", - "FUNCTION_NO_QUOTE", - "TILDE", - "PREFIXMATCH", - "SUFFIXMATCH", - "SUBSTRINGMATCH", - "NOT_PSEUDO_CLASS", - "KEYFRAMES_SYM", - "MATCHES_PSEUDO_CLASS", - "NAMESPACE_SYM", - "MOZ_PSEUDO_ELEMENT", - "RESOLUTION", - "COLON", - "SUPPORTS_SYM", - "OR", - "VARIABLE_NAME", - "CALC_SYM", - "FONTFACE_SYM", - "UNICODE_RANGE", - "RATIO", - "\"|\"", - "\".\"", - "$start", - "document", - "stylesheet", - "@1", - "charset", - "import", - "namespace", - "body", - "import_location", - "medium", - "ident", - "media_query_list", - "media_query", - "optional_only_or_not", - "media_type", - "optional_and_exprs", - "media_expr", - "optional_space", - "expr", - "resolution", - "ruleset", - "conditional_rule", - "keyframes_rule", - "fontface_rule", - "media", - "document_query", - "supports", - "body_in_media", - "empty_ruleset", - "start_media", - "start_document_query", - "start_document_query_pos", - "url_match_fns", - "url_match_fn", - "function_no_quote", - "function", - "uri", - "start_supports", - "supports_condition_root", - "supports_negation", - "supports_conjunction_or_disjunction", - "supports_condition_in_parens", - "supports_condition", - "supports_declaration_condition", - "supports_conjunction", - "supports_disjunction", - "declaration_internal", - "start_keyframes_rule", - "keyframes_blocks", - "keyframes_block", - "start_keyframes_block", - "declarations", - "keyframes_selectors", - "keyframes_selector", - "start_fontface_rule", - "start_selector", - "selectors", - "selector", - "simple_selector", - "combinator", - "element_name", - "hcap", - "simple_selectors", - "ident_with_namespace", - "hash", - "class", - "attrib", - "pseudo", - "any_number_of_idents", - "multiple_idents", - "one_or_more_semis", - "declaration", - "property", - "prio", - "operator", - "term", - "ratio", - "numeric", - "string", - "hexcolor", - "calc", - "uranges", - "calc_sum", - "calc_product", - "calc_value", - "unary_operator" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'csspool.y', 26) - def _reduce_1(val, _values, result) - @handler.start_document - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 28) - def _reduce_2(val, _values, result) - @handler.end_document - result - end -.,., - -# reduce 3 omitted - -# reduce 4 omitted - -# reduce 5 omitted - -# reduce 6 omitted - -# reduce 7 omitted - -# reduce 8 omitted - -# reduce 9 omitted - -# reduce 10 omitted - -module_eval(<<'.,.,', 'csspool.y', 41) - def _reduce_11(val, _values, result) - @handler.charset interpret_string(val[1]), {} - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 45) - def _reduce_12(val, _values, result) - @handler.import_style val[2], val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 48) - def _reduce_13(val, _values, result) - @handler.import_style [], val[1] - - result - end -.,., - -# reduce 14 omitted - -module_eval(<<'.,.,', 'csspool.y', 53) - def _reduce_15(val, _values, result) - result = Terms::String.new interpret_string val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 54) - def _reduce_16(val, _values, result) - result = Terms::URI.new interpret_uri val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 58) - def _reduce_17(val, _values, result) - @handler.namespace val[1], val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 61) - def _reduce_18(val, _values, result) - @handler.namespace nil, val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 66) - def _reduce_19(val, _values, result) - result = val[0] << MediaType.new(val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 69) - def _reduce_20(val, _values, result) - result = [MediaType.new(val[0])] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 73) - def _reduce_21(val, _values, result) - result = MediaQueryList.new([ val[0] ]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 74) - def _reduce_22(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 75) - def _reduce_23(val, _values, result) - result = MediaQueryList.new - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 78) - def _reduce_24(val, _values, result) - result = MediaQuery.new(val[0], val[1], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 79) - def _reduce_25(val, _values, result) - result = MediaQuery.new(nil, val[0], val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 82) - def _reduce_26(val, _values, result) - result = :only - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 83) - def _reduce_27(val, _values, result) - result = :not - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 84) - def _reduce_28(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 87) - def _reduce_29(val, _values, result) - result = MediaType.new(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 90) - def _reduce_30(val, _values, result) - result = MediaType.new(val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 91) - def _reduce_31(val, _values, result) - result = MediaFeature.new(val[2], val[6][0]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 94) - def _reduce_32(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 95) - def _reduce_33(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 98) - def _reduce_34(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 99) - def _reduce_35(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 103) - def _reduce_36(val, _values, result) - unit = val.first.gsub(/[\s\d.]/, '') - number = numeric(val.first) - result = Terms::Resolution.new(number, unit) - - result - end -.,., - -# reduce 37 omitted - -# reduce 38 omitted - -# reduce 39 omitted - -# reduce 40 omitted - -# reduce 41 omitted - -# reduce 42 omitted - -# reduce 43 omitted - -# reduce 44 omitted - -# reduce 45 omitted - -# reduce 46 omitted - -# reduce 47 omitted - -# reduce 48 omitted - -# reduce 49 omitted - -module_eval(<<'.,.,', 'csspool.y', 128) - def _reduce_50(val, _values, result) - @handler.end_media val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 132) - def _reduce_51(val, _values, result) - result = val[1] - @handler.start_media result - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 137) - def _reduce_52(val, _values, result) - @handler.end_document_query(before_pos(val), after_pos(val)) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 138) - def _reduce_53(val, _values, result) - @handler.end_document_query(before_pos(val), after_pos(val)) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 142) - def _reduce_54(val, _values, result) - @handler.start_document_query(val[1], after_pos(val)) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 147) - def _reduce_55(val, _values, result) - @handler.node_start_pos = before_pos(val) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 152) - def _reduce_56(val, _values, result) - result = [val[0], val[2]].flatten - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 155) - def _reduce_57(val, _values, result) - result = val - - result - end -.,., - -# reduce 58 omitted - -# reduce 59 omitted - -# reduce 60 omitted - -module_eval(<<'.,.,', 'csspool.y', 164) - def _reduce_61(val, _values, result) - @handler.end_supports - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 165) - def _reduce_62(val, _values, result) - @handler.end_supports - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 169) - def _reduce_63(val, _values, result) - @handler.start_supports val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 173) - def _reduce_64(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 174) - def _reduce_65(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 175) - def _reduce_66(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 178) - def _reduce_67(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 179) - def _reduce_68(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 180) - def _reduce_69(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 183) - def _reduce_70(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 184) - def _reduce_71(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 187) - def _reduce_72(val, _values, result) - result = val.join('') - result - end -.,., - -# reduce 73 omitted - -# reduce 74 omitted - -module_eval(<<'.,.,', 'csspool.y', 194) - def _reduce_75(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 195) - def _reduce_76(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 198) - def _reduce_77(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 199) - def _reduce_78(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 202) - def _reduce_79(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 203) - def _reduce_80(val, _values, result) - result = val.join('') - result - end -.,., - -# reduce 81 omitted - -# reduce 82 omitted - -module_eval(<<'.,.,', 'csspool.y', 211) - def _reduce_83(val, _values, result) - @handler.start_keyframes_rule val[1] - - result - end -.,., - -# reduce 84 omitted - -# reduce 85 omitted - -module_eval(<<'.,.,', 'csspool.y', 219) - def _reduce_86(val, _values, result) - @handler.end_keyframes_block - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 220) - def _reduce_87(val, _values, result) - @handler.end_keyframes_block - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 224) - def _reduce_88(val, _values, result) - @handler.start_keyframes_block val[0] - - result - end -.,., - -# reduce 89 omitted - -module_eval(<<'.,.,', 'csspool.y', 229) - def _reduce_90(val, _values, result) - result = val[0] + ', ' + val[2] - - result - end -.,., - -# reduce 91 omitted - -# reduce 92 omitted - -module_eval(<<'.,.,', 'csspool.y', 235) - def _reduce_93(val, _values, result) - result = val[0].strip - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 238) - def _reduce_94(val, _values, result) - @handler.end_fontface_rule - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 239) - def _reduce_95(val, _values, result) - @handler.end_fontface_rule - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 243) - def _reduce_96(val, _values, result) - @handler.start_fontface_rule - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 248) - def _reduce_97(val, _values, result) - @handler.end_selector val.first - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 251) - def _reduce_98(val, _values, result) - @handler.end_selector val.first - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 256) - def _reduce_99(val, _values, result) - start = @handler.start_selector([]) - @handler.end_selector(start) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 261) - def _reduce_100(val, _values, result) - result = val.last - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 263) - def _reduce_101(val, _values, result) - @handler.start_selector val.first - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 269) - def _reduce_102(val, _values, result) - sel = Selector.new(val.first, {}) - result = [sel].concat(val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 274) - def _reduce_103(val, _values, result) - result = [Selector.new(val.first, {})] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 280) - def _reduce_104(val, _values, result) - val.flatten! - val[2].combinator = val.delete_at 1 - result = val - - result - end -.,., - -# reduce 105 omitted - -module_eval(<<'.,.,', 'csspool.y', 287) - def _reduce_106(val, _values, result) - result = :s - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 288) - def _reduce_107(val, _values, result) - result = :> - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 289) - def _reduce_108(val, _values, result) - result = :+ - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 290) - def _reduce_109(val, _values, result) - result = :~ - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 294) - def _reduce_110(val, _values, result) - selector = val.first - selector.additional_selectors = val.last - result = [selector] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 298) - def _reduce_111(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 301) - def _reduce_112(val, _values, result) - ss = Selectors::Simple.new nil, nil - ss.additional_selectors = val.flatten - result = [ss] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 307) - def _reduce_113(val, _values, result) - result = [val[0], val[2]].flatten - result - end -.,., - -# reduce 114 omitted - -module_eval(<<'.,.,', 'csspool.y', 311) - def _reduce_115(val, _values, result) - result = [interpret_identifier(val[0]), nil] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 312) - def _reduce_116(val, _values, result) - result = [interpret_identifier(val[2]), interpret_identifier(val[0])] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 313) - def _reduce_117(val, _values, result) - result = [interpret_identifier(val[1]), nil] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 314) - def _reduce_118(val, _values, result) - result = [interpret_identifier(val[2]), '*'] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 317) - def _reduce_119(val, _values, result) - result = Selectors::Type.new val.first[0], nil, val.first[1] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 318) - def _reduce_120(val, _values, result) - result = Selectors::Universal.new val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 319) - def _reduce_121(val, _values, result) - result = Selectors::Universal.new val[1] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 320) - def _reduce_122(val, _values, result) - result = Selectors::Universal.new val[2], nil, val[0] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 321) - def _reduce_123(val, _values, result) - result = Selectors::Universal.new val[2], nil, interpret_identifier(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 324) - def _reduce_124(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 325) - def _reduce_125(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 326) - def _reduce_126(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 327) - def _reduce_127(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 328) - def _reduce_128(val, _values, result) - result = val.flatten - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 329) - def _reduce_129(val, _values, result) - result = val.flatten - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 330) - def _reduce_130(val, _values, result) - result = val.flatten - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 331) - def _reduce_131(val, _values, result) - result = val.flatten - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 335) - def _reduce_132(val, _values, result) - result = Selectors::Id.new interpret_identifier val.first.sub(/^#/, '') - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 339) - def _reduce_133(val, _values, result) - result = Selectors::Class.new interpret_identifier val.last - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 344) - def _reduce_134(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_identifier(val[3]), - Selectors::Attribute::EQUALS, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 352) - def _reduce_135(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_string(val[3]), - Selectors::Attribute::EQUALS, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 360) - def _reduce_136(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_string(val[3]), - Selectors::Attribute::INCLUDES, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 368) - def _reduce_137(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_identifier(val[3]), - Selectors::Attribute::INCLUDES, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 376) - def _reduce_138(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_identifier(val[3]), - Selectors::Attribute::DASHMATCH, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 384) - def _reduce_139(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_string(val[3]), - Selectors::Attribute::DASHMATCH, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 392) - def _reduce_140(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_identifier(val[3]), - Selectors::Attribute::PREFIXMATCH, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 400) - def _reduce_141(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_string(val[3]), - Selectors::Attribute::PREFIXMATCH, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 408) - def _reduce_142(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_identifier(val[3]), - Selectors::Attribute::SUFFIXMATCH, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 416) - def _reduce_143(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_string(val[3]), - Selectors::Attribute::SUFFIXMATCH, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 424) - def _reduce_144(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_identifier(val[3]), - Selectors::Attribute::SUBSTRINGMATCH, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 432) - def _reduce_145(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - interpret_string(val[3]), - Selectors::Attribute::SUBSTRINGMATCH, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 440) - def _reduce_146(val, _values, result) - result = Selectors::Attribute.new( - val[1][0], - nil, - Selectors::Attribute::SET, - val[1][1] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 450) - def _reduce_147(val, _values, result) - result = Selectors::pseudo interpret_identifier(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 453) - def _reduce_148(val, _values, result) - result = Selectors::PseudoElement.new( - interpret_identifier(val[2]) - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 458) - def _reduce_149(val, _values, result) - result = Selectors::PseudoClass.new( - interpret_identifier(val[1].sub(/\($/, '')), - '' - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 464) - def _reduce_150(val, _values, result) - result = Selectors::PseudoClass.new( - interpret_identifier(val[1].sub(/\($/, '')), - interpret_identifier(val[2]) - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 470) - def _reduce_151(val, _values, result) - result = Selectors::PseudoClass.new( - 'not', - val[2].first.to_s - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 476) - def _reduce_152(val, _values, result) - result = Selectors::PseudoClass.new( - interpret_identifier(val[1].sub(/\(.*/, '')), - interpret_identifier(val[1].sub(/.*\(/, '').sub(/\).*/, '')) - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 482) - def _reduce_153(val, _values, result) - result = Selectors::PseudoClass.new( - val[1].split('(').first.strip, - val[2].join(', ') - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 488) - def _reduce_154(val, _values, result) - result = Selectors::PseudoElement.new( - interpret_identifier(val[1].sub(/\($/, '')) - ) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 493) - def _reduce_155(val, _values, result) - result = Selectors::PseudoElement.new( - interpret_identifier(val[2].sub(/\($/, '')) - ) - - result - end -.,., - -# reduce 156 omitted - -# reduce 157 omitted - -# reduce 158 omitted - -# reduce 159 omitted - -# reduce 160 omitted - -# reduce 161 omitted - -# reduce 162 omitted - -# reduce 163 omitted - -# reduce 164 omitted - -# reduce 165 omitted - -# reduce 166 omitted - -module_eval(<<'.,.,', 'csspool.y', 519) - def _reduce_167(val, _values, result) - @handler.property val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 523) - def _reduce_168(val, _values, result) - result = Declaration.new(val.first, val[2], val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 525) - def _reduce_169(val, _values, result) - result = Declaration.new(val.first, val[3], val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 527) - def _reduce_170(val, _values, result) - result = Declaration.new(val.first, val[3], val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 529) - def _reduce_171(val, _values, result) - result = Declaration.new(val.first, val[4], val[5]) - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 532) - def _reduce_172(val, _values, result) - result = true - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 533) - def _reduce_173(val, _values, result) - result = false - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 536) - def _reduce_174(val, _values, result) - result = interpret_identifier val[0] - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 537) - def _reduce_175(val, _values, result) - result = interpret_identifier val.join - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 538) - def _reduce_176(val, _values, result) - result = interpret_identifier val[0] - result - end -.,., - -# reduce 177 omitted - -# reduce 178 omitted - -# reduce 179 omitted - -module_eval(<<'.,.,', 'csspool.y', 547) - def _reduce_180(val, _values, result) - result = [val.first, val.last].flatten - val.last.first.operator = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 550) - def _reduce_181(val, _values, result) - result = val.flatten - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 551) - def _reduce_182(val, _values, result) - result = val - result - end -.,., - -# reduce 183 omitted - -# reduce 184 omitted - -# reduce 185 omitted - -# reduce 186 omitted - -# reduce 187 omitted - -# reduce 188 omitted - -# reduce 189 omitted - -# reduce 190 omitted - -# reduce 191 omitted - -# reduce 192 omitted - -# reduce 193 omitted - -module_eval(<<'.,.,', 'csspool.y', 567) - def _reduce_194(val, _values, result) - result = val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 569) - def _reduce_195(val, _values, result) - name = interpret_identifier val.first.sub(/\($/, '') - if name == 'rgb' - result = Terms::Rgb.new(*val[1]) - else - result = Terms::Function.new name, val[1] - end - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 577) - def _reduce_196(val, _values, result) - name = interpret_identifier val.first.sub(/\($/, '') - result = Terms::Function.new name - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 582) - def _reduce_197(val, _values, result) - result = val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 584) - def _reduce_198(val, _values, result) - parts = val.first.split('(') - name = interpret_identifier parts.first - result = Terms::Function.new(name, [Terms::String.new(interpret_string_no_quote(parts.last))]) - - result - end -.,., - -# reduce 199 omitted - -# reduce 200 omitted - -module_eval(<<'.,.,', 'csspool.y', 595) - def _reduce_201(val, _values, result) - result = Terms::Math.new(val.first.split('(').first, val[1]) - - result - end -.,., - -# reduce 202 omitted - -module_eval(<<'.,.,', 'csspool.y', 601) - def _reduce_203(val, _values, result) - val.insert(1, ' '); result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 602) - def _reduce_204(val, _values, result) - val.insert(1, ' '); result = val.join('') - result - end -.,., - -# reduce 205 omitted - -module_eval(<<'.,.,', 'csspool.y', 606) - def _reduce_206(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 607) - def _reduce_207(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 610) - def _reduce_208(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 611) - def _reduce_209(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 612) - def _reduce_210(val, _values, result) - result = val.join('') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 615) - def _reduce_211(val, _values, result) - result = val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 616) - def _reduce_212(val, _values, result) - result = Terms::Hash.new val.first.sub(/^#/, '') - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 619) - def _reduce_213(val, _values, result) - result = val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 620) - def _reduce_214(val, _values, result) - result = Terms::URI.new interpret_uri val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 623) - def _reduce_215(val, _values, result) - result = val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 624) - def _reduce_216(val, _values, result) - result = Terms::String.new interpret_string val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 628) - def _reduce_217(val, _values, result) - result = val[1] - val[1].unary_operator = val.first - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 632) - def _reduce_218(val, _values, result) - result = Terms::Number.new numeric val.first - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 635) - def _reduce_219(val, _values, result) - result = Terms::Number.new numeric(val.first), nil, '%' - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 638) - def _reduce_220(val, _values, result) - unit = val.first.gsub(/[\s\d.]/, '') - result = Terms::Number.new numeric(val.first), nil, unit - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 642) - def _reduce_221(val, _values, result) - unit = val.first.gsub(/[\s\d.]/, '') - result = Terms::Number.new numeric(val.first), nil, unit - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 646) - def _reduce_222(val, _values, result) - unit = val.first.gsub(/[\s\d.]/, '') - result = Terms::Number.new numeric(val.first), nil, unit - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 650) - def _reduce_223(val, _values, result) - unit = val.first.gsub(/[\s\d.]/, '') - result = Terms::Number.new numeric(val.first), nil, unit - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 656) - def _reduce_224(val, _values, result) - result = Terms::Ratio.new(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 660) - def _reduce_225(val, _values, result) - result = :minus - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 661) - def _reduce_226(val, _values, result) - result = :plus - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 664) - def _reduce_227(val, _values, result) - result = val.first - result - end -.,., - -module_eval(<<'.,.,', 'csspool.y', 665) - def _reduce_228(val, _values, result) - result = Terms::Ident.new interpret_identifier val.first - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser - end # module CSS -end # module CSSPool diff --git a/test/racc/regress/edtf b/test/racc/regress/edtf deleted file mode 100644 index 5947931260..0000000000 --- a/test/racc/regress/edtf +++ /dev/null @@ -1,1794 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - -require 'strscan' - -module EDTF - class Parser < Racc::Parser - -module_eval(<<'...end edtf.y/module_eval...', 'edtf.y', 468) - - @defaults = { - :level => 2, - :debug => false - }.freeze - - class << self; attr_reader :defaults; end - - attr_reader :options - - def initialize(options = {}) - @options = Parser.defaults.merge(options) - end - - def debug? - !!(options[:debug] || ENV['DEBUG']) - end - - def parse(input) - parse!(input) - rescue => e - warn e.message if debug? - nil - end - - def parse!(input) - @yydebug = debug? - @src = StringScanner.new(input) - do_parse - end - - def on_error(tid, value, stack) - raise ArgumentError, - "failed to parse date: unexpected '#{value}' at #{stack.inspect}" - end - - def apply_uncertainty(date, uncertainty, scope = nil) - uncertainty.each do |u| - scope.nil? ? date.send(u) : date.send(u, scope) - end - date - end - - alias uoa apply_uncertainty - - def next_token - case - when @src.eos? - nil - # when @src.scan(/\s+/) - # ignore whitespace - when @src.scan(/\(/) - ['(', @src.matched] - # when @src.scan(/\)\?~-/) - # [:PUA, [:uncertain!, :approximate!]] - # when @src.scan(/\)\?-/) - # [:PUA, [:uncertain!]] - # when @src.scan(/\)~-/) - # [:PUA, [:approximate!]] - when @src.scan(/\)/) - [')', @src.matched] - when @src.scan(/\[/) - ['[', @src.matched] - when @src.scan(/\]/) - [']', @src.matched] - when @src.scan(/\{/) - ['{', @src.matched] - when @src.scan(/\}/) - ['}', @src.matched] - when @src.scan(/T/) - [:T, @src.matched] - when @src.scan(/Z/) - [:Z, @src.matched] - when @src.scan(/\?~/) - [:UA, [:uncertain!, :approximate!]] - when @src.scan(/\?/) - [:UA, [:uncertain!]] - when @src.scan(/~/) - [:UA, [:approximate!]] - when @src.scan(/open/i) - [:OPEN, :open] - when @src.scan(/unkn?own/i) # matches 'unkown' typo too - [:UNKNOWN, :unknown] - when @src.scan(/u/) - [:U, @src.matched] - when @src.scan(/x/i) - [:X, @src.matched] - when @src.scan(/y/) - [:LONGYEAR, @src.matched] - when @src.scan(/e/) - [:E, @src.matched] - when @src.scan(/\+/) - ['+', @src.matched] - when @src.scan(/-\(/) - ['-(', @src.matched] - when @src.scan(/-/) - ['-', @src.matched] - when @src.scan(/:/) - [':', @src.matched] - when @src.scan(/\//) - ['/', @src.matched] - when @src.scan(/\s*\.\.\s*/) - [:DOTS, '..'] - when @src.scan(/\s*,\s*/) - [',', ','] - when @src.scan(/\^\w+/) - ['^', @src.matched[1..-1]] - when @src.scan(/\d/) - [@src.matched, @src.matched.to_i] - else @src.scan(/./) - [:UNMATCHED, @src.rest] - end - end - - -# -*- racc -*- -...end edtf.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 129, 128, 52, 111, 51, 112, 149, 208, 207, 57, - -50, 43, 45, 40, 55, 42, 54, 44, 43, 45, - 40, -48, 42, 53, 44, 64, 58, 46, 47, 48, - 49, 50, 128, 56, 46, 47, 48, 49, 50, 207, - 57, 65, 43, 45, 40, 55, 42, 157, 44, 43, - 45, 40, 55, 42, 214, 44, 92, 58, 46, 47, - 48, 49, 50, 66, 56, 46, 47, 48, 49, 50, - 25, 56, 26, 93, 94, 67, 108, 12, -65, 43, - 45, 40, -66, 42, 159, 44, 110, 33, 111, 34, - 112, 95, 36, 25, 141, 46, 47, 48, 49, 50, - 12, 58, 43, 45, 40, 101, 42, 103, 44, 104, - 96, 148, 55, 133, 147, 36, 124, 125, 46, 47, - 48, 49, 50, 87, 165, 111, 12, 112, 43, 45, - 40, 56, 42, 146, 44, 166, 111, 150, 112, 218, - 167, 36, 152, 153, 46, 47, 48, 49, 50, 87, - 108, 111, 12, 112, 43, 45, 40, 188, 42, 186, - 44, 187, 111, 190, 112, 154, 111, 36, 112, 156, - 46, 47, 48, 49, 50, 69, 158, 43, 45, 189, - 191, 42, 12, 44, 43, 45, 40, 200, 42, 201, - 44, 168, 177, 46, 47, 48, 49, 50, 233, 178, - 46, 47, 48, 49, 50, 12, 180, 43, 45, 40, - 111, 42, 112, 44, 232, 234, 111, 240, 112, 239, - 36, 192, 193, 46, 47, 48, 49, 50, 12, 202, - 43, 45, 40, 118, 42, 117, 44, 104, 118, 121, - 117, 209, 104, 36, 121, 210, 46, 47, 48, 49, - 50, 12, 212, 43, 45, 40, 244, 42, 239, 44, - 213, 43, 45, 40, 215, 42, 36, 44, 229, 46, - 47, 48, 49, 50, 180, 180, 236, 46, 47, 48, - 49, 50, 43, 45, 40, 253, 42, 254, 44, 43, - 45, 40, 255, 42, 258, 44, 261, 264, 46, 47, - 48, 49, 50, 124, 125, 46, 47, 48, 49, 50, - 43, 45, 40, 265, 42, 192, 44, 43, 45, 266, - 269, 42, 270, 44, 275, 280, 46, 47, 48, 49, - 50, 284, 285, 46, 47, 48, 49, 50, 43, 45, - 40, 286, 42, 290, 44, 43, 45, 292, 293, 42, - 295, 44, 296, 297, 46, 47, 48, 49, 50, 300, - 301, 46, 47, 48, 49, 50, 43, 45, 40, 180, - 42, 303, 44, 43, 45, 40, 304, 42, 305, 44, - 281, 306, 46, 47, 48, 49, 50, 307, 308, 46, - 47, 48, 49, 50, 43, 45, 175, 311, 42, 312, - 44, 43, 45, 40, 313, 42, 314, 44, 316, 317, - 46, 47, 48, 49, 50, 318, 319, 46, 47, 48, - 49, 50, 43, 45, nil, nil, 42, nil, 44, 43, - 45, nil, nil, 42, nil, 44, nil, nil, 46, 47, - 48, 49, 50, nil, nil, 46, 47, 48, 49, 50, - 172, 194, 170, nil, 171, nil, 173, 43, 45, 40, - nil, 42, nil, 44, nil, nil, 195, 196, 197, 198, - 199, nil, nil, 46, 47, 48, 49, 50, 43, 45, - 40, nil, 42, nil, 44, 43, 45, 40, nil, 42, - nil, 44, nil, nil, 46, 47, 48, 49, 50, nil, - nil, 46, 47, 48, 49, 50, 43, 45, 40, nil, - 42, nil, 44, 43, 45, nil, nil, 42, nil, 44, - nil, nil, 46, 47, 48, 49, 50, nil, nil, 46, - 47, 48, 49, 50, 43, 45, 40, nil, 42, nil, - 44, 43, 45, 40, nil, 42, nil, 44, nil, nil, - 46, 47, 48, 49, 50, nil, nil, 46, 47, 48, - 49, 50, 43, 45, 40, nil, 42, nil, 44, 43, - 45, 40, nil, 42, nil, 44, nil, nil, 46, 47, - 48, 49, 50, nil, nil, 46, 47, 48, 49, 50, - 43, 45, nil, nil, 42, nil, 44, 43, 45, 40, - nil, 42, nil, 44, nil, nil, 46, 47, 48, 49, - 50, nil, nil, 46, 47, 48, 49, 50, 43, 45, - 40, nil, 42, nil, 44, 43, 45, 273, nil, 42, - nil, 44, nil, nil, 46, 47, 48, 49, 50, nil, - nil, 46, 47, 48, 49, 50, 43, 45, 274, nil, - 42, nil, 44, 43, 45, 276, nil, 42, nil, 44, - nil, nil, 46, 47, 48, 49, 50, nil, nil, 46, - 47, 48, 49, 50, 43, 45, 40, nil, 42, nil, - 44, 43, 45, 40, nil, 42, nil, 44, nil, nil, - 46, 47, 48, 49, 50, nil, nil, 46, 47, 48, - 49, 50, 43, 45, 40, nil, 42, nil, 44, 43, - 45, 40, nil, 42, nil, 44, nil, nil, 46, 47, - 48, 49, 50, nil, nil, 46, 47, 48, 49, 50, - 43, 45, 40, nil, 42, nil, 44, 43, 45, 315, - nil, 42, nil, 44, nil, nil, 46, 47, 48, 49, - 50, 116, nil, 46, 47, 48, 49, 50, 118, 250, - 247, 118, 104, 117, 249, 104, 260, 121, nil, 281, - nil, nil, nil, nil, 251, nil, 118, 288, 117, 118, - 104, 117, 121, 104, 118, 121, 117, 118, 104, 117, - 121, 104, nil, 121, 118, 250, 247, nil, 104, nil, - 249, 118, 250, 247, nil, 104, nil, 249, nil, nil, - 251, nil, 118, 250, 117, nil, 104, 251, 249, 118, - 250, 310, nil, 104, nil, 249, nil, nil, 251, nil, - 172, 169, 170, nil, 171, 251, 173, 182, 184, nil, - 118, 181, 117, 183, 104, 118, 121, 117, 118, 104, - 117, 121, 104, 118, 121, 117, 118, 104, 117, 121, - 104, 118, 121, 117, nil, 104, nil, 121, 188, 271, - 186, 118, 187, 117, 272, 104, nil, 121 ] - -racc_action_check = [ - 63, 63, 5, 56, 1, 56, 73, 127, 127, 73, - 14, 63, 63, 63, 9, 63, 9, 63, 127, 127, - 127, 5, 127, 5, 127, 16, 73, 63, 63, 63, - 63, 63, 151, 9, 127, 127, 127, 127, 127, 224, - 10, 17, 151, 151, 151, 89, 151, 89, 151, 224, - 224, 224, 134, 224, 134, 224, 37, 10, 151, 151, - 151, 151, 151, 18, 89, 224, 224, 224, 224, 224, - 0, 134, 0, 37, 38, 22, 54, 0, 23, 0, - 0, 0, 24, 0, 91, 0, 54, 0, 54, 0, - 54, 38, 0, 67, 67, 0, 0, 0, 0, 0, - 67, 91, 67, 67, 67, 52, 67, 52, 67, 52, - 51, 72, 72, 66, 72, 67, 59, 60, 67, 67, - 67, 67, 67, 33, 98, 66, 33, 66, 33, 33, - 33, 72, 33, 71, 33, 98, 92, 74, 92, 147, - 98, 33, 77, 78, 33, 33, 33, 33, 33, 34, - 214, 147, 34, 147, 34, 34, 34, 112, 34, 112, - 34, 112, 214, 113, 214, 79, 93, 34, 93, 88, - 34, 34, 34, 34, 34, 26, 90, 26, 26, 113, - 113, 26, 87, 26, 87, 87, 87, 121, 87, 121, - 87, 99, 107, 26, 26, 26, 26, 26, 161, 108, - 87, 87, 87, 87, 87, 153, 109, 153, 153, 153, - 124, 153, 124, 153, 161, 161, 157, 166, 157, 166, - 153, 115, 116, 153, 153, 153, 153, 153, 154, 123, - 154, 154, 154, 58, 154, 58, 154, 58, 94, 58, - 94, 128, 94, 154, 94, 129, 154, 154, 154, 154, - 154, 265, 132, 265, 265, 265, 167, 265, 167, 265, - 133, 12, 12, 12, 144, 12, 265, 12, 158, 265, - 265, 265, 265, 265, 160, 162, 163, 12, 12, 12, - 12, 12, 13, 13, 13, 169, 13, 178, 13, 36, - 36, 36, 189, 36, 202, 36, 213, 218, 13, 13, - 13, 13, 13, 220, 222, 36, 36, 36, 36, 36, - 62, 62, 62, 225, 62, 230, 62, 64, 64, 232, - 236, 64, 238, 64, 245, 253, 62, 62, 62, 62, - 62, 256, 257, 64, 64, 64, 64, 64, 68, 68, - 68, 260, 68, 264, 68, 69, 69, 267, 268, 69, - 271, 69, 273, 274, 68, 68, 68, 68, 68, 280, - 281, 69, 69, 69, 69, 69, 70, 70, 70, 283, - 70, 284, 70, 75, 75, 75, 285, 75, 288, 75, - 290, 292, 70, 70, 70, 70, 70, 293, 295, 75, - 75, 75, 75, 75, 103, 103, 103, 300, 103, 304, - 103, 104, 104, 104, 307, 104, 308, 104, 311, 312, - 103, 103, 103, 103, 103, 313, 316, 104, 104, 104, - 104, 104, 111, 111, nil, nil, 111, nil, 111, 117, - 117, nil, nil, 117, nil, 117, nil, nil, 111, 111, - 111, 111, 111, nil, nil, 117, 117, 117, 117, 117, - 118, 118, 118, nil, 118, nil, 118, 126, 126, 126, - nil, 126, nil, 126, nil, nil, 118, 118, 118, 118, - 118, nil, nil, 126, 126, 126, 126, 126, 130, 130, - 130, nil, 130, nil, 130, 143, 143, 143, nil, 143, - nil, 143, nil, nil, 130, 130, 130, 130, 130, nil, - nil, 143, 143, 143, 143, 143, 145, 145, 145, nil, - 145, nil, 145, 146, 146, nil, nil, 146, nil, 146, - nil, nil, 145, 145, 145, 145, 145, nil, nil, 146, - 146, 146, 146, 146, 148, 148, 148, nil, 148, nil, - 148, 149, 149, 149, nil, 149, nil, 149, nil, nil, - 148, 148, 148, 148, 148, nil, nil, 149, 149, 149, - 149, 149, 150, 150, 150, nil, 150, nil, 150, 205, - 205, 205, nil, 205, nil, 205, nil, nil, 150, 150, - 150, 150, 150, nil, nil, 205, 205, 205, 205, 205, - 215, 215, nil, nil, 215, nil, 215, 216, 216, 216, - nil, 216, nil, 216, nil, nil, 215, 215, 215, 215, - 215, nil, nil, 216, 216, 216, 216, 216, 217, 217, - 217, nil, 217, nil, 217, 240, 240, 240, nil, 240, - nil, 240, nil, nil, 217, 217, 217, 217, 217, nil, - nil, 240, 240, 240, 240, 240, 244, 244, 244, nil, - 244, nil, 244, 247, 247, 247, nil, 247, nil, 247, - nil, nil, 244, 244, 244, 244, 244, nil, nil, 247, - 247, 247, 247, 247, 249, 249, 249, nil, 249, nil, - 249, 250, 250, 250, nil, 250, nil, 250, nil, nil, - 249, 249, 249, 249, 249, nil, nil, 250, 250, 250, - 250, 250, 251, 251, 251, nil, 251, nil, 251, 262, - 262, 262, nil, 262, nil, 262, nil, nil, 251, 251, - 251, 251, 251, nil, nil, 262, 262, 262, 262, 262, - 263, 263, 263, nil, 263, nil, 263, 310, 310, 310, - nil, 310, nil, 310, nil, nil, 263, 263, 263, 263, - 263, 57, nil, 310, 310, 310, 310, 310, 168, 168, - 168, 57, 168, 57, 168, 57, 212, 57, nil, 254, - nil, nil, nil, nil, 168, nil, 212, 261, 212, 254, - 212, 254, 212, 254, 95, 254, 95, 261, 95, 261, - 95, 261, nil, 261, 270, 270, 270, nil, 270, nil, - 270, 275, 275, 275, nil, 275, nil, 275, nil, nil, - 270, nil, 296, 296, 296, nil, 296, 275, 296, 297, - 297, 297, nil, 297, nil, 297, nil, nil, 296, nil, - 101, 101, 101, nil, 101, 297, 101, 110, 110, nil, - 125, 110, 125, 110, 125, 159, 125, 159, 190, 159, - 190, 159, 190, 191, 190, 191, 233, 191, 233, 191, - 233, 234, 233, 234, nil, 234, nil, 234, 239, 239, - 239, 255, 239, 255, 239, 255, nil, 255 ] - -racc_action_pointer = [ - 63, 4, nil, nil, nil, 0, nil, nil, nil, 2, - 26, nil, 245, 266, -11, nil, 21, 18, 49, nil, - nil, nil, 54, 78, 82, nil, 161, nil, nil, nil, - nil, nil, nil, 112, 138, nil, 273, 42, 60, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 110, 89, nil, 70, nil, -15, 745, 217, 102, - 103, nil, 294, -5, 301, nil, 107, 86, 322, 329, - 350, 129, 100, -5, 126, 357, nil, 117, 115, 137, - nil, nil, nil, nil, nil, nil, nil, 168, 142, 33, - 146, 70, 118, 148, 222, 768, nil, nil, 121, 176, - nil, 814, nil, 378, 385, nil, nil, 180, 193, 194, - 821, 406, 141, 149, nil, 209, 216, 413, 434, nil, - nil, 169, nil, 199, 192, 824, 441, 2, 235, 240, - 462, nil, 238, 254, 40, nil, nil, nil, nil, nil, - nil, nil, nil, 469, 260, 490, 497, 133, 518, 525, - 546, 26, nil, 191, 214, nil, nil, 198, 256, 829, - 262, 184, 263, 246, nil, nil, 199, 238, 742, 270, - nil, nil, nil, nil, nil, nil, nil, nil, 273, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 280, - 832, 837, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 282, nil, nil, 553, nil, nil, nil, nil, - nil, nil, 760, 282, 144, 574, 581, 602, 291, nil, - 289, nil, 290, nil, 33, 285, nil, nil, nil, nil, - 303, nil, 307, 840, 845, nil, 308, nil, 307, 852, - 609, nil, nil, nil, 630, 309, nil, 637, nil, 658, - 665, 686, nil, 307, 763, 855, 301, 302, nil, nil, - 335, 771, 693, 714, 329, 237, nil, 317, 318, nil, - 778, 335, nil, 337, 338, 785, nil, nil, nil, nil, - 341, 354, nil, 357, 359, 364, nil, nil, 372, nil, - 374, nil, 369, 375, nil, 370, 796, 803, nil, nil, - 382, nil, nil, nil, 369, nil, nil, 374, 388, nil, - 721, 390, 397, 403, nil, nil, 398, nil, nil, nil ] - -racc_action_default = [ - -176, -176, -1, -2, -3, -4, -5, -6, -7, -8, - -9, -10, -176, -176, -34, -35, -36, -37, -38, -39, - -40, -41, -176, -49, -51, -52, -176, -64, -67, -68, - -69, -70, -71, -176, -176, -107, -176, -109, -110, -111, - -128, -129, -130, -131, -132, -133, -134, -135, -136, -137, - -138, -176, -176, -76, -176, -112, -176, -176, -176, -8, - -9, -11, -176, -176, -176, -72, -176, -176, -55, -176, - -170, -176, -8, -9, -10, -176, -38, -176, -81, -86, - -87, -88, -90, -91, -92, -93, -94, -176, -176, -176, - -176, -176, -176, -176, -176, -176, 320, -12, -13, -176, - -16, -176, -31, -176, -176, -152, -27, -29, -176, -126, - -176, -176, -176, -176, -28, -30, -176, -176, -176, -153, - -160, -176, -162, -176, -176, -176, -176, -176, -176, -176, - -73, -174, -176, -176, -8, -47, -48, -49, -50, -51, - -53, -54, -58, -56, -176, -171, -176, -176, -98, -97, - -96, -176, -79, -176, -176, -95, -80, -176, -176, -176, - -126, -176, -126, -176, -14, -18, -176, -176, -176, -176, - -147, -148, -149, -150, -145, -151, -146, -114, -44, -59, - -127, -60, -61, -62, -63, -139, -140, -141, -142, -176, - -176, -176, -120, -45, -154, -155, -156, -157, -158, -159, - -161, -163, -176, -29, -30, -176, -26, -42, -77, -43, - -78, -175, -176, -176, -176, -176, -172, -74, -176, -101, - -176, -100, -176, -99, -176, -83, -84, -85, -89, -108, - -176, -113, -176, -176, -176, -117, -176, -19, -176, -176, - -176, -143, -20, -21, -176, -176, -32, -176, -164, -176, - -176, -176, -169, -176, -176, -115, -176, -176, -121, -102, - -176, -176, -75, -173, -44, -176, -116, -176, -176, -118, - -176, -176, -144, -176, -176, -176, -168, -165, -166, -167, - -176, -176, -106, -126, -176, -176, -105, -103, -176, -57, - -176, -82, -176, -176, -23, -176, -176, -176, -15, -33, - -176, -46, -119, -122, -176, -104, -124, -176, -176, -25, - -176, -176, -176, -176, -24, -22, -176, -123, -125, -17 ] - -racc_goto_table = [ - 70, 179, 130, 13, 228, 11, 248, 115, 123, 226, - 227, 113, 245, 5, 14, 9, 63, 11, 68, 10, - 18, 132, 22, 23, 71, 1, 24, 59, 237, 243, - 2, 60, 309, 309, 241, 241, 75, 75, 131, 77, - 88, 3, 4, 70, 162, 163, 6, 160, 161, 61, - 97, 89, 231, 98, 235, 91, 164, 99, 298, 100, - 242, 143, 102, 299, 15, 126, 127, 144, 16, 17, - 75, 142, 11, 145, 135, 204, 109, 174, 151, 203, - 136, 138, 134, 27, 217, 185, 10, 18, 28, 140, - 137, 174, 11, 139, 29, 30, 31, 32, 225, 90, - 155, 105, 59, nil, nil, nil, 60, 176, 248, 230, - nil, nil, nil, 248, 294, 228, nil, nil, nil, nil, - 131, 291, nil, nil, nil, nil, nil, nil, nil, 205, - 206, nil, nil, 211, 248, 248, nil, nil, nil, nil, - 256, 257, nil, nil, nil, nil, 142, nil, 216, nil, - nil, nil, nil, 262, 224, 223, 75, 75, nil, nil, - nil, nil, 259, 219, 220, 220, nil, nil, 221, 222, - nil, nil, nil, nil, nil, 302, nil, nil, nil, nil, - nil, nil, nil, 267, 268, nil, nil, nil, nil, 131, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 282, 283, nil, nil, 206, nil, - nil, 287, nil, nil, 185, nil, nil, nil, 185, 263, - 211, 174, nil, nil, nil, nil, nil, 206, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 277, 278, 279, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 211, 289, nil, 75, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 174 ] - -racc_goto_check = [ - 43, 45, 52, 23, 58, 11, 66, 26, 26, 57, - 57, 24, 16, 5, 30, 9, 23, 11, 42, 10, - 34, 24, 38, 40, 53, 1, 41, 9, 19, 19, - 2, 10, 22, 22, 25, 25, 23, 23, 43, 54, - 54, 3, 4, 43, 26, 26, 6, 24, 24, 7, - 12, 9, 45, 13, 45, 10, 14, 15, 17, 18, - 20, 42, 28, 29, 31, 23, 23, 53, 32, 33, - 23, 23, 11, 23, 39, 26, 44, 43, 23, 24, - 5, 30, 9, 46, 52, 43, 10, 34, 47, 38, - 40, 43, 11, 41, 48, 49, 50, 51, 56, 61, - 5, 65, 9, nil, nil, nil, 10, 23, 66, 26, - nil, nil, nil, 66, 16, 58, nil, nil, nil, nil, - 43, 57, nil, nil, nil, nil, nil, nil, nil, 23, - 23, nil, nil, 23, 66, 66, nil, nil, nil, nil, - 26, 26, nil, nil, nil, nil, 23, nil, 23, nil, - nil, nil, nil, 52, 23, 11, 23, 23, nil, nil, - nil, nil, 26, 9, 9, 9, nil, nil, 10, 10, - nil, nil, nil, nil, nil, 45, nil, nil, nil, nil, - nil, nil, nil, 26, 26, nil, nil, nil, nil, 43, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 26, 26, nil, nil, 23, nil, - nil, 26, nil, nil, 43, nil, nil, nil, 43, 23, - 23, 43, nil, nil, nil, nil, nil, 23, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 23, 23, 23, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 23, 23, nil, 23, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 43 ] - -racc_goto_pointer = [ - nil, 25, 30, 41, 42, 13, 46, 37, nil, 15, - 19, 5, -2, 1, -42, 5, -156, -217, 7, -138, - -107, nil, -264, 3, -45, -132, -50, nil, 10, -212, - 14, 64, 68, 69, 20, nil, nil, nil, 22, 7, - 23, 26, -8, -26, 22, -108, 83, 88, 94, 95, - 96, 97, -62, -2, 6, nil, -55, -144, -150, nil, - nil, 63, nil, nil, nil, 49, -162, nil ] - -racc_goto_default = [ - nil, nil, nil, nil, nil, 84, nil, 7, 8, 72, - 73, 74, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 238, 252, 62, 107, 106, nil, 114, nil, 246, - 86, nil, nil, nil, 76, 19, 20, 21, nil, nil, - 85, nil, nil, 41, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 78, 79, 80, 81, 82, - 83, 35, 37, 38, 39, 119, 120, 122 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 38, :_reduce_none, - 1, 38, :_reduce_none, - 1, 38, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 42, :_reduce_none, - 1, 42, :_reduce_none, - 1, 44, :_reduce_8, - 1, 44, :_reduce_9, - 1, 44, :_reduce_10, - 2, 45, :_reduce_11, - 3, 43, :_reduce_12, - 1, 49, :_reduce_none, - 2, 49, :_reduce_14, - 5, 50, :_reduce_15, - 1, 50, :_reduce_none, - 8, 55, :_reduce_17, - 1, 51, :_reduce_18, - 2, 51, :_reduce_19, - 2, 51, :_reduce_20, - 1, 57, :_reduce_none, - 5, 57, :_reduce_22, - 3, 56, :_reduce_23, - 5, 56, :_reduce_24, - 4, 56, :_reduce_25, - 4, 46, :_reduce_26, - 1, 61, :_reduce_none, - 1, 63, :_reduce_none, - 3, 47, :_reduce_29, - 3, 48, :_reduce_30, - 1, 52, :_reduce_none, - 1, 53, :_reduce_none, - 1, 54, :_reduce_none, - 1, 40, :_reduce_none, - 1, 40, :_reduce_none, - 1, 40, :_reduce_none, - 1, 40, :_reduce_none, - 1, 67, :_reduce_38, - 1, 67, :_reduce_none, - 1, 67, :_reduce_none, - 1, 67, :_reduce_none, - 4, 71, :_reduce_42, - 4, 71, :_reduce_43, - 4, 72, :_reduce_44, - 4, 73, :_reduce_45, - 7, 74, :_reduce_46, - 3, 68, :_reduce_47, - 1, 75, :_reduce_none, - 1, 75, :_reduce_none, - 1, 75, :_reduce_none, - 1, 75, :_reduce_none, - 1, 75, :_reduce_none, - 1, 76, :_reduce_none, - 1, 76, :_reduce_none, - 2, 69, :_reduce_55, - 3, 69, :_reduce_56, - 5, 79, :_reduce_57, - 2, 79, :_reduce_58, - 4, 70, :_reduce_59, - 2, 81, :_reduce_60, - 2, 81, :_reduce_61, - 2, 81, :_reduce_62, - 2, 81, :_reduce_63, - 1, 41, :_reduce_none, - 1, 41, :_reduce_none, - 1, 41, :_reduce_none, - 1, 41, :_reduce_none, - 1, 41, :_reduce_none, - 1, 41, :_reduce_none, - 1, 41, :_reduce_none, - 1, 41, :_reduce_none, - 2, 83, :_reduce_72, - 3, 88, :_reduce_73, - 4, 88, :_reduce_74, - 5, 88, :_reduce_75, - 2, 87, :_reduce_76, - 4, 86, :_reduce_77, - 4, 86, :_reduce_78, - 3, 84, :_reduce_79, - 3, 85, :_reduce_80, - 1, 91, :_reduce_81, - 5, 91, :_reduce_82, - 3, 91, :_reduce_83, - 3, 91, :_reduce_84, - 3, 91, :_reduce_85, - 1, 91, :_reduce_86, - 1, 91, :_reduce_87, - 1, 93, :_reduce_88, - 3, 93, :_reduce_89, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 96, :_reduce_none, - 1, 96, :_reduce_none, - 1, 96, :_reduce_none, - 2, 92, :_reduce_95, - 2, 94, :_reduce_96, - 2, 94, :_reduce_97, - 2, 94, :_reduce_98, - 3, 97, :_reduce_99, - 3, 97, :_reduce_100, - 3, 97, :_reduce_101, - 5, 78, :_reduce_102, - 6, 78, :_reduce_103, - 7, 78, :_reduce_104, - 6, 78, :_reduce_105, - 6, 78, :_reduce_106, - 1, 77, :_reduce_none, - 4, 77, :_reduce_108, - 1, 98, :_reduce_109, - 1, 98, :_reduce_110, - 1, 98, :_reduce_111, - 2, 99, :_reduce_112, - 4, 100, :_reduce_113, - 4, 100, :_reduce_114, - 5, 100, :_reduce_115, - 5, 100, :_reduce_116, - 4, 101, :_reduce_117, - 5, 101, :_reduce_118, - 7, 101, :_reduce_119, - 4, 101, :_reduce_120, - 5, 101, :_reduce_121, - 7, 101, :_reduce_122, - 9, 101, :_reduce_123, - 7, 101, :_reduce_124, - 9, 101, :_reduce_125, - 0, 82, :_reduce_126, - 1, 82, :_reduce_none, - 1, 60, :_reduce_128, - 1, 60, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_none, - 2, 62, :_reduce_139, - 2, 62, :_reduce_140, - 2, 62, :_reduce_141, - 2, 62, :_reduce_142, - 1, 58, :_reduce_none, - 2, 58, :_reduce_144, - 2, 102, :_reduce_145, - 2, 102, :_reduce_146, - 2, 102, :_reduce_147, - 2, 102, :_reduce_148, - 2, 102, :_reduce_149, - 2, 102, :_reduce_150, - 2, 65, :_reduce_none, - 1, 65, :_reduce_none, - 1, 103, :_reduce_none, - 2, 103, :_reduce_154, - 2, 103, :_reduce_155, - 2, 103, :_reduce_156, - 2, 103, :_reduce_157, - 2, 103, :_reduce_158, - 2, 103, :_reduce_159, - 1, 104, :_reduce_none, - 2, 104, :_reduce_161, - 1, 64, :_reduce_none, - 2, 64, :_reduce_163, - 1, 59, :_reduce_none, - 2, 59, :_reduce_165, - 2, 59, :_reduce_166, - 2, 59, :_reduce_167, - 2, 66, :_reduce_none, - 1, 66, :_reduce_none, - 1, 90, :_reduce_170, - 2, 90, :_reduce_171, - 3, 90, :_reduce_172, - 4, 90, :_reduce_173, - 1, 89, :_reduce_174, - 2, 89, :_reduce_175 ] - -racc_reduce_n = 176 - -racc_shift_n = 320 - -racc_token_table = { - false => 0, - :error => 1, - :T => 2, - :Z => 3, - :E => 4, - :X => 5, - :U => 6, - :UNKNOWN => 7, - :OPEN => 8, - :LONGYEAR => 9, - :UNMATCHED => 10, - :DOTS => 11, - :UA => 12, - :PUA => 13, - "-" => 14, - ":" => 15, - "2" => 16, - "4" => 17, - "0" => 18, - "+" => 19, - "1" => 20, - "/" => 21, - "3" => 22, - "^" => 23, - "[" => 24, - "]" => 25, - "{" => 26, - "}" => 27, - "," => 28, - "(" => 29, - ")" => 30, - "-(" => 31, - "5" => 32, - "6" => 33, - "7" => 34, - "8" => 35, - "9" => 36 } - -racc_nt_base = 37 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "T", - "Z", - "E", - "X", - "U", - "UNKNOWN", - "OPEN", - "LONGYEAR", - "UNMATCHED", - "DOTS", - "UA", - "PUA", - "\"-\"", - "\":\"", - "\"2\"", - "\"4\"", - "\"0\"", - "\"+\"", - "\"1\"", - "\"/\"", - "\"3\"", - "\"^\"", - "\"[\"", - "\"]\"", - "\"{\"", - "\"}\"", - "\",\"", - "\"(\"", - "\")\"", - "\"-(\"", - "\"5\"", - "\"6\"", - "\"7\"", - "\"8\"", - "\"9\"", - "$start", - "edtf", - "level_0_expression", - "level_1_expression", - "level_2_expression", - "date", - "date_time", - "positive_date", - "negative_date", - "year", - "year_month", - "year_month_day", - "time", - "base_time", - "zone_offset", - "hour", - "minute", - "second", - "midnight", - "zone_offset_hour", - "positive_zone_offset", - "d01_13", - "d01_59", - "digit", - "month", - "d01_12", - "day", - "d01_31", - "d00_23", - "d00_59", - "unspecified", - "level_1_interval", - "long_year_simple", - "season", - "unspecified_year", - "unspecified_month", - "unspecified_day", - "unspecified_day_and_month", - "level_1_start", - "level_1_end", - "partial_uncertain_or_approximate", - "partial_unspecified", - "long_year", - "positive_digit", - "season_number", - "ua", - "season_qualified", - "choice_list", - "inclusive_list", - "masked_precision", - "date_and_calendar", - "long_year_scientific", - "integer", - "int1_4", - "list", - "earlier", - "list_elements", - "later", - "list_element", - "atomic", - "consecutives", - "pua_base", - "pua_year", - "pua_year_month", - "pua_year_month_day", - "d01_23", - "d01_29", - "d01_30" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -# reduce 1 omitted - -# reduce 2 omitted - -# reduce 3 omitted - -# reduce 4 omitted - -# reduce 5 omitted - -# reduce 6 omitted - -# reduce 7 omitted - -module_eval(<<'.,.,', 'edtf.y', 54) - def _reduce_8(val, _values, result) - result = Date.new(val[0]).year_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 55) - def _reduce_9(val, _values, result) - result = Date.new(*val.flatten).month_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 56) - def _reduce_10(val, _values, result) - result = Date.new(*val.flatten).day_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 59) - def _reduce_11(val, _values, result) - result = -val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 63) - def _reduce_12(val, _values, result) - result = DateTime.new(val[0].year, val[0].month, val[0].day, *val[2]) - result.skip_timezone = (val[2].length == 3) - - result - end -.,., - -# reduce 13 omitted - -module_eval(<<'.,.,', 'edtf.y', 68) - def _reduce_14(val, _values, result) - result = val.flatten - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 70) - def _reduce_15(val, _values, result) - result = val.values_at(0, 2, 4) - result - end -.,., - -# reduce 16 omitted - -module_eval(<<'.,.,', 'edtf.y', 73) - def _reduce_17(val, _values, result) - result = [24, 0, 0] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 75) - def _reduce_18(val, _values, result) - result = 0 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 76) - def _reduce_19(val, _values, result) - result = -1 * val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 77) - def _reduce_20(val, _values, result) - result = val[1] - result - end -.,., - -# reduce 21 omitted - -module_eval(<<'.,.,', 'edtf.y', 81) - def _reduce_22(val, _values, result) - result = 0 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 85) - def _reduce_23(val, _values, result) - result = Rational(val[0] * 60 + val[2], 1440) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 86) - def _reduce_24(val, _values, result) - result = Rational(840, 1440) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 87) - def _reduce_25(val, _values, result) - result = Rational(val[3], 1440) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 91) - def _reduce_26(val, _values, result) - result = val.zip([1000,100,10,1]).reduce(0) { |s,(a,b)| s += a * b } - - result - end -.,., - -# reduce 27 omitted - -# reduce 28 omitted - -module_eval(<<'.,.,', 'edtf.y', 97) - def _reduce_29(val, _values, result) - result = [val[0], val[2]] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 104) - def _reduce_30(val, _values, result) - result = val[0] << val[2] - if result[2] > 31 || (result[2] > 30 && [2,4,6,9,11].include?(result[1])) || (result[2] > 29 && result[1] == 2) - raise ArgumentError, "invalid date (invalid days #{result[2]} for month #{result[1]})" - end - - result - end -.,., - -# reduce 31 omitted - -# reduce 32 omitted - -# reduce 33 omitted - -# reduce 34 omitted - -# reduce 35 omitted - -# reduce 36 omitted - -# reduce 37 omitted - -module_eval(<<'.,.,', 'edtf.y', 127) - def _reduce_38(val, _values, result) - result = Date.new(val[0][0]).year_precision! - result.unspecified.year[2,2] = val[0][1] - - result - end -.,., - -# reduce 39 omitted - -# reduce 40 omitted - -# reduce 41 omitted - -module_eval(<<'.,.,', 'edtf.y', 138) - def _reduce_42(val, _values, result) - result = [val[0,3].zip([1000,100,10]).reduce(0) { |s,(a,b)| s += a * b }, [false,true]] - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 142) - def _reduce_43(val, _values, result) - result = [val[0,2].zip([1000,100]).reduce(0) { |s,(a,b)| s += a * b }, [true, true]] - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 146) - def _reduce_44(val, _values, result) - result = Date.new(val[0]).unspecified!(:month) - result.precision = :month - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 151) - def _reduce_45(val, _values, result) - result = Date.new(*val[0]).unspecified!(:day) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 155) - def _reduce_46(val, _values, result) - result = Date.new(val[0]).unspecified!([:day,:month]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 160) - def _reduce_47(val, _values, result) - result = Interval.new(val[0], val[2]) - - result - end -.,., - -# reduce 48 omitted - -# reduce 49 omitted - -# reduce 50 omitted - -# reduce 51 omitted - -# reduce 52 omitted - -# reduce 53 omitted - -# reduce 54 omitted - -module_eval(<<'.,.,', 'edtf.y', 171) - def _reduce_55(val, _values, result) - result = Date.new(val[1]) - result.precision = :year - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 176) - def _reduce_56(val, _values, result) - result = Date.new(-1 * val[2]) - result.precision = :year - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 183) - def _reduce_57(val, _values, result) - result = val.zip([10000,1000,100,10,1]).reduce(0) { |s,(a,b)| s += a * b } - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 185) - def _reduce_58(val, _values, result) - result = 10 * val[0] + val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 190) - def _reduce_59(val, _values, result) - result = Season.new(val[0], val[2]) - val[3].each { |ua| result.send(ua) } - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 194) - def _reduce_60(val, _values, result) - result = 21 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 195) - def _reduce_61(val, _values, result) - result = 22 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 196) - def _reduce_62(val, _values, result) - result = 23 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 197) - def _reduce_63(val, _values, result) - result = 24 - result - end -.,., - -# reduce 64 omitted - -# reduce 65 omitted - -# reduce 66 omitted - -# reduce 67 omitted - -# reduce 68 omitted - -# reduce 69 omitted - -# reduce 70 omitted - -# reduce 71 omitted - -module_eval(<<'.,.,', 'edtf.y', 215) - def _reduce_72(val, _values, result) - result = val[0]; result.qualifier = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 221) - def _reduce_73(val, _values, result) - result = Date.new(val[0].year * 10 ** val[2]).year_precision! - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 225) - def _reduce_74(val, _values, result) - result = Date.new(val[1] * 10 ** val[3]).year_precision! - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 229) - def _reduce_75(val, _values, result) - result = Date.new(-1 * val[2] * 10 ** val[4]).year_precision! - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 234) - def _reduce_76(val, _values, result) - result = val[0]; result.calendar = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 240) - def _reduce_77(val, _values, result) - d = val[0,3].zip([1000,100,10]).reduce(0) { |s,(a,b)| s += a * b } - result = EDTF::Decade.new(d) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 245) - def _reduce_78(val, _values, result) - d = val[0,2].zip([1000,100]).reduce(0) { |s,(a,b)| s += a * b } - result = EDTF::Century.new(d) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 251) - def _reduce_79(val, _values, result) - result = val[1].choice! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 253) - def _reduce_80(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 255) - def _reduce_81(val, _values, result) - result = EDTF::Set.new(val[0]).earlier! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 256) - def _reduce_82(val, _values, result) - result = EDTF::Set.new([val[0]] + val[2] + [val[4]]).earlier!.later! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 257) - def _reduce_83(val, _values, result) - result = EDTF::Set.new([val[0]] + val[2]).earlier! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 258) - def _reduce_84(val, _values, result) - result = EDTF::Set.new([val[0]] + [val[2]]).earlier!.later! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 259) - def _reduce_85(val, _values, result) - result = EDTF::Set.new(val[0] + [val[2]]).later! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 260) - def _reduce_86(val, _values, result) - result = EDTF::Set.new(*val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 261) - def _reduce_87(val, _values, result) - result = EDTF::Set.new(val[0]).later! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 264) - def _reduce_88(val, _values, result) - result = [val[0]].flatten - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 265) - def _reduce_89(val, _values, result) - result = val[0] + [val[2]].flatten - result - end -.,., - -# reduce 90 omitted - -# reduce 91 omitted - -# reduce 92 omitted - -# reduce 93 omitted - -# reduce 94 omitted - -module_eval(<<'.,.,', 'edtf.y', 277) - def _reduce_95(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 279) - def _reduce_96(val, _values, result) - result = Date.new(*val[0]).year_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 280) - def _reduce_97(val, _values, result) - result = Date.new(*val[0]).month_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 281) - def _reduce_98(val, _values, result) - result = Date.new(val[0]).year_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 284) - def _reduce_99(val, _values, result) - result = (Date.new(val[0]).day_precision! .. Date.new(val[2]).day_precision!) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 285) - def _reduce_100(val, _values, result) - result = (Date.new(val[0]).month_precision! .. Date.new(val[2]).month_precision!) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 286) - def _reduce_101(val, _values, result) - result = (Date.new(val[0]).year_precision! .. Date.new(val[2]).year_precision!) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 292) - def _reduce_102(val, _values, result) - result = Date.new(val[0][0], val[2], val[4]) - result.unspecified.year[2,2] = val[0][1] - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 297) - def _reduce_103(val, _values, result) - result = Date.new(val[0][0], 1, val[5]) - result.unspecified.year[2,2] = val[0][1] - result.unspecified!(:month) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 303) - def _reduce_104(val, _values, result) - result = Date.new(val[0][0], 1, 1) - result.unspecified.year[2,2] = val[0][1] - result.unspecified!([:month, :day]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 309) - def _reduce_105(val, _values, result) - result = Date.new(val[0][0], val[2], 1) - result.unspecified.year[2,2] = val[0][1] - result.unspecified!(:day) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 315) - def _reduce_106(val, _values, result) - result = Date.new(val[0], 1, val[5]) - result.unspecified!(:month) - - result - end -.,., - -# reduce 107 omitted - -module_eval(<<'.,.,', 'edtf.y', 322) - def _reduce_108(val, _values, result) - result = uoa(val[1], val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 325) - def _reduce_109(val, _values, result) - result = val[0].year_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 326) - def _reduce_110(val, _values, result) - result = val[0][0].month_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 327) - def _reduce_111(val, _values, result) - result = val[0].day_precision! - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 329) - def _reduce_112(val, _values, result) - result = uoa(Date.new(val[0]), val[1], :year) - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 333) - def _reduce_113(val, _values, result) - result = [uoa(val[0].change(:month => val[2]), val[3], [:month, :year])] - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 336) - def _reduce_114(val, _values, result) - result = [uoa(Date.new(val[0], val[2]), val[3], [:year, :month])] - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 339) - def _reduce_115(val, _values, result) - result = [uoa(Date.new(val[0], val[2]), val[4], [:month]), true] - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 342) - def _reduce_116(val, _values, result) - result = [uoa(val[0].change(:month => val[2]), val[4], [:month]), true] - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 348) - def _reduce_117(val, _values, result) - result = uoa(val[0][0].change(:day => val[2]), val[3], val[0][1] ? [:day] : nil) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 351) - def _reduce_118(val, _values, result) - result = uoa(val[0][0].change(:day => val[2]), val[4], [:day]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 354) - def _reduce_119(val, _values, result) - result = uoa(uoa(Date.new(val[0], val[2], val[5]), val[4], :month), val[6], :day) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 357) - def _reduce_120(val, _values, result) - result = uoa(Date.new(val[0][0], val[0][1], val[2]), val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 360) - def _reduce_121(val, _values, result) - result = uoa(Date.new(val[0][0], val[0][1], val[2]), val[4], [:day]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 363) - def _reduce_122(val, _values, result) - result = uoa(Date.new(val[0], val[2], val[4]), val[6], [:month, :day]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 366) - def _reduce_123(val, _values, result) - result = Date.new(val[0], val[2], val[4]) - result = uoa(result, val[6], [:day]) - result = uoa(result, val[8], [:month, :day]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 371) - def _reduce_124(val, _values, result) - result = val[0].change(:month => val[2], :day => val[4]) - result = uoa(result, val[6], [:month, :day]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 375) - def _reduce_125(val, _values, result) - result = val[0].change(:month => val[2], :day => val[4]) - result = uoa(result, val[6], [:day]) - result = uoa(result, val[8], [:month, :day]) - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 386) - def _reduce_126(val, _values, result) - result = [] - result - end -.,., - -# reduce 127 omitted - -module_eval(<<'.,.,', 'edtf.y', 390) - def _reduce_128(val, _values, result) - result = 0 - result - end -.,., - -# reduce 129 omitted - -# reduce 130 omitted - -# reduce 131 omitted - -# reduce 132 omitted - -# reduce 133 omitted - -# reduce 134 omitted - -# reduce 135 omitted - -# reduce 136 omitted - -# reduce 137 omitted - -# reduce 138 omitted - -module_eval(<<'.,.,', 'edtf.y', 396) - def _reduce_139(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 397) - def _reduce_140(val, _values, result) - result = 10 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 398) - def _reduce_141(val, _values, result) - result = 11 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 399) - def _reduce_142(val, _values, result) - result = 12 - result - end -.,., - -# reduce 143 omitted - -module_eval(<<'.,.,', 'edtf.y', 403) - def _reduce_144(val, _values, result) - result = 13 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 406) - def _reduce_145(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 407) - def _reduce_146(val, _values, result) - result = 10 + val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 408) - def _reduce_147(val, _values, result) - result = 20 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 409) - def _reduce_148(val, _values, result) - result = 21 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 410) - def _reduce_149(val, _values, result) - result = 22 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 411) - def _reduce_150(val, _values, result) - result = 23 - result - end -.,., - -# reduce 151 omitted - -# reduce 152 omitted - -# reduce 153 omitted - -module_eval(<<'.,.,', 'edtf.y', 419) - def _reduce_154(val, _values, result) - result = 24 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 420) - def _reduce_155(val, _values, result) - result = 25 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 421) - def _reduce_156(val, _values, result) - result = 26 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 422) - def _reduce_157(val, _values, result) - result = 27 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 423) - def _reduce_158(val, _values, result) - result = 28 - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 424) - def _reduce_159(val, _values, result) - result = 29 - result - end -.,., - -# reduce 160 omitted - -module_eval(<<'.,.,', 'edtf.y', 428) - def _reduce_161(val, _values, result) - result = 30 - result - end -.,., - -# reduce 162 omitted - -module_eval(<<'.,.,', 'edtf.y', 432) - def _reduce_163(val, _values, result) - result = 31 - result - end -.,., - -# reduce 164 omitted - -module_eval(<<'.,.,', 'edtf.y', 436) - def _reduce_165(val, _values, result) - result = 30 + val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 437) - def _reduce_166(val, _values, result) - result = 40 + val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 438) - def _reduce_167(val, _values, result) - result = 50 + val[1] - result - end -.,., - -# reduce 168 omitted - -# reduce 169 omitted - -module_eval(<<'.,.,', 'edtf.y', 445) - def _reduce_170(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 446) - def _reduce_171(val, _values, result) - result = 10 * val[0] + val[1] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 449) - def _reduce_172(val, _values, result) - result = val.zip([100,10,1]).reduce(0) { |s,(a,b)| s += a * b } - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 453) - def _reduce_173(val, _values, result) - result = val.zip([1000,100,10,1]).reduce(0) { |s,(a,b)| s += a * b } - - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 457) - def _reduce_174(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'edtf.y', 458) - def _reduce_175(val, _values, result) - result = 10 * val[0] + val[1] - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module EDTF diff --git a/test/racc/regress/huia b/test/racc/regress/huia deleted file mode 100644 index cac22873df..0000000000 --- a/test/racc/regress/huia +++ /dev/null @@ -1,1681 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.2 -# from Racc grammar file "". -# - -require 'racc/parser.rb' -module Huia - class Parser < Racc::Parser - -module_eval(<<'...end huia.y/module_eval...', 'huia.y', 211) - -attr_accessor :lexer, :scopes, :state - -def initialize lexer - @lexer = lexer - @state = [] - @scopes = [] - push_scope -end - -def ast - @ast ||= do_parse - @scopes.first -end - -def on_error t, val, vstack - line = lexer.line - col = lexer.column - message = "Unexpected #{token_to_str t} at #{lexer.filename} line #{line}:#{col}:\n\n" - - start = line - 5 > 0 ? line - 5 : 0 - i_size = line.to_s.size - (start..(start + 5)).each do |i| - message << sprintf("\t%#{i_size}d: %s\n", i, lexer.get_line(i)) - message << "\t#{' ' * i_size} #{'-' * (col - 1)}^\n" if i == line - end - - raise SyntaxError, message -end - -def next_token - nt = lexer.next_computed_token - # just use a state stack for now, we'll have to do something - # more sophisticated soon. - if nt && nt.first == :state - if nt.last - state.push << nt.last - else - state.pop - end - next_token - else - nt - end -end - -def push_scope - new_scope = Huia::AST::Scope.new scope - new_scope.file = lexer.filename - new_scope.line = lexer.line - new_scope.column = lexer.column - scopes.push new_scope - new_scope -end - -def pop_scope - scopes.pop -end - -def scope - scopes.last -end - -def binary left, right, method - node(:MethodCall, left, node(:CallSignature, method, [right])) -end - -def unary left, method - node(:MethodCall, left, node(:CallSignature, method)) -end - -def node type, *args - Huia::AST.const_get(type).new(*args).tap do |n| - n.file = lexer.filename - n.line = lexer.line - n.column = lexer.column - end -end -alias n node - -def allocate_local name - node(:Variable, name).tap do |n| - scope.allocate_local n - end -end - -def allocate_local_assignment name, value - node(:Assignment, name, value).tap do |n| - scope.allocate_local n - end -end - -def this_closure - allocate_local('@') -end - -def scope_instance - node(:ScopeInstance, scope) -end - -def constant name - return scope_instance if name == 'self' - node(:Constant, name) -end - -def to_string expr - node(:MethodCall, expr, node(:CallSignature, 'toString')) -end -...end huia.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 81, 106, 40, 37, 61, 62, 123, 153, 135, 71, - 72, 77, 155, 178, 179, 39, 164, 37, 37, 5, - 6, 137, 152, 73, 74, 75, 36, 36, 76, 28, - 154, 80, 166, 172, 180, 22, 23, 37, 26, 27, - 182, 60, 63, 19, 164, 40, 36, 61, 62, 186, - nil, 33, 71, 72, 77, nil, nil, 134, 39, 133, - 129, 37, 5, 6, nil, nil, 73, 74, 75, nil, - 36, 76, 28, 134, 80, 169, 129, nil, 22, 23, - nil, 26, 27, nil, 60, 63, 19, nil, 40, nil, - 61, 62, nil, nil, 33, 71, 72, 77, nil, nil, - nil, 39, nil, nil, 37, nil, nil, nil, nil, 73, - 74, 75, nil, 36, 76, 28, nil, 80, nil, nil, - nil, 22, 23, nil, 26, 27, nil, 60, 63, 19, - nil, 40, nil, 61, 62, nil, nil, 33, 71, 72, - 77, nil, nil, nil, 39, nil, nil, 37, nil, nil, - nil, nil, 73, 74, 75, nil, 36, 76, 28, nil, - 80, nil, nil, nil, 22, 23, nil, 26, 27, nil, - 60, 63, 19, nil, 40, nil, 61, 62, nil, nil, - 33, 71, 72, 77, nil, nil, nil, 39, nil, nil, - 37, nil, nil, nil, nil, 73, 74, 75, nil, 36, - 76, 28, nil, 80, nil, nil, nil, 22, 23, nil, - 26, 27, nil, 60, 63, 19, nil, 40, nil, 61, - 62, nil, nil, 33, 71, 72, 77, nil, 114, nil, - 39, nil, nil, 37, nil, nil, 113, nil, 73, 74, - 75, nil, 36, 76, 28, nil, 80, nil, nil, nil, - 22, 23, nil, 26, 27, nil, 60, 63, 19, nil, - 40, nil, 61, 62, nil, nil, 33, 71, 72, 77, - nil, nil, nil, 39, nil, nil, 37, nil, nil, nil, - nil, 73, 74, 75, nil, 36, 76, 28, nil, 80, - nil, nil, nil, 22, 23, nil, 26, 27, nil, 60, - 63, 19, nil, 40, nil, 61, 62, nil, nil, 33, - 71, 72, 77, nil, nil, nil, 39, nil, nil, 37, - nil, nil, nil, nil, 73, 74, 75, nil, 36, 76, - 28, nil, 80, nil, nil, nil, 22, 23, nil, 26, - 27, nil, 60, 63, 19, nil, 40, nil, 61, 62, - nil, nil, 33, 71, 72, 77, nil, nil, nil, 39, - nil, nil, 37, nil, nil, nil, nil, 73, 74, 75, - nil, 36, 76, 28, nil, 80, nil, nil, nil, 22, - 23, nil, 26, 27, nil, 60, 63, 19, nil, 40, - nil, 61, 62, nil, nil, 33, 71, 72, 77, nil, - nil, nil, 39, nil, nil, 37, nil, nil, nil, nil, - 73, 74, 75, nil, 36, 76, 28, nil, 80, nil, - nil, nil, 22, 23, nil, 26, 27, nil, 60, 63, - 19, nil, 40, nil, 61, 62, nil, nil, 33, 71, - 72, 77, nil, nil, nil, 39, nil, nil, 37, nil, - nil, nil, nil, 73, 74, 75, nil, 36, 76, 28, - nil, 80, nil, nil, nil, 22, 23, nil, 26, 27, - nil, 60, 63, 19, nil, 40, nil, 61, 62, nil, - nil, 33, 71, 72, 77, nil, nil, nil, 39, nil, - nil, 37, nil, nil, nil, nil, 73, 74, 75, nil, - 36, 76, 28, nil, 80, nil, nil, nil, 22, 23, - nil, 26, 27, nil, 60, 63, 19, nil, 40, nil, - 61, 62, nil, nil, 33, 71, 72, 77, nil, nil, - nil, 39, nil, nil, 37, nil, nil, nil, nil, 73, - 74, 75, nil, 36, 76, 28, nil, 80, nil, nil, - nil, 22, 23, nil, 26, 27, nil, 60, 63, 19, - nil, 40, nil, 61, 62, nil, nil, 33, 71, 72, - 77, nil, nil, nil, 39, nil, nil, 37, nil, nil, - nil, nil, 73, 74, 75, nil, 36, 76, 28, nil, - 80, nil, nil, nil, 22, 23, nil, 26, 27, nil, - 60, 63, 19, nil, 40, nil, 61, 62, nil, nil, - 33, 71, 72, 77, nil, nil, nil, 39, nil, nil, - 37, nil, nil, nil, nil, 73, 74, 75, nil, 36, - 76, 28, nil, 80, nil, nil, nil, 22, 23, nil, - 26, 27, nil, 60, 63, 19, nil, 40, nil, 61, - 62, nil, nil, 33, 71, 72, 77, nil, nil, nil, - 39, nil, nil, 37, nil, nil, nil, nil, 73, 74, - 75, nil, 36, 76, 28, nil, 80, nil, nil, nil, - 22, 23, nil, 26, 27, nil, 60, 63, 19, nil, - 40, nil, 61, 62, nil, nil, 33, 71, 72, 77, - nil, nil, nil, 39, nil, nil, 37, nil, nil, nil, - nil, 73, 74, 75, nil, 36, 76, 28, nil, 80, - nil, nil, nil, 22, 23, nil, 26, 27, nil, 60, - 63, 19, nil, 40, nil, 61, 62, nil, nil, 33, - 71, 72, 77, nil, nil, nil, 39, nil, nil, 37, - nil, nil, nil, nil, 73, 74, 75, nil, 36, 76, - 28, nil, 80, nil, nil, nil, 22, 23, nil, 26, - 27, nil, 60, 63, 19, nil, 40, nil, 61, 62, - nil, nil, 33, 71, 72, 77, nil, nil, nil, 39, - nil, nil, 37, nil, nil, nil, nil, 73, 74, 75, - nil, 36, 76, 28, nil, 80, nil, nil, nil, 22, - 23, nil, 26, 27, nil, 60, 63, 19, nil, 40, - nil, 61, 62, nil, nil, 33, 71, 72, 77, nil, - nil, nil, 39, nil, nil, 37, nil, nil, nil, nil, - 73, 74, 75, nil, 36, 76, 28, nil, 80, nil, - nil, nil, 22, 23, nil, 26, 27, nil, 60, 63, - 19, nil, 40, nil, 61, 62, nil, nil, 33, 71, - 72, 77, nil, nil, nil, 39, nil, nil, 37, nil, - nil, nil, nil, 73, 74, 75, nil, 36, 76, 28, - nil, 80, nil, nil, nil, 22, 23, nil, 26, 27, - nil, 60, 63, 19, nil, 40, nil, 61, 62, nil, - nil, 33, 71, 72, 77, nil, nil, nil, 39, nil, - nil, 37, nil, nil, nil, nil, 73, 74, 75, nil, - 36, 76, 28, nil, 80, nil, nil, nil, 22, 23, - nil, 26, 27, nil, 60, 63, 19, nil, 40, nil, - 61, 62, nil, nil, 33, 71, 72, 77, nil, nil, - nil, 39, nil, nil, 37, nil, nil, nil, nil, 73, - 74, 75, nil, 36, 76, 28, nil, 80, nil, nil, - nil, 22, 23, nil, 26, 27, nil, 60, 63, 19, - nil, 40, nil, 61, 62, nil, nil, 33, 71, 72, - 77, nil, nil, nil, 39, nil, nil, 37, nil, nil, - nil, nil, 73, 74, 75, nil, 36, 76, 28, nil, - 80, nil, nil, nil, 22, 23, nil, 26, 27, nil, - 60, 63, 19, nil, 40, nil, 61, 62, nil, nil, - 33, 71, 72, 77, nil, nil, nil, 39, nil, nil, - 37, nil, nil, nil, nil, 73, 74, 75, nil, 36, - 76, 28, nil, 80, nil, nil, nil, 22, 23, nil, - 26, 27, nil, 60, 63, 19, nil, 40, nil, 61, - 62, nil, nil, 33, 71, 72, 77, nil, nil, 160, - 39, nil, nil, 37, 5, 6, nil, nil, 73, 74, - 75, nil, 36, 76, 28, nil, 80, nil, nil, nil, - 22, 23, nil, 26, 27, nil, 60, 63, 19, nil, - 40, nil, 61, 62, nil, nil, 33, 71, 72, 77, - nil, nil, nil, 39, nil, nil, 37, nil, nil, nil, - nil, 73, 74, 75, nil, 36, 76, 28, nil, 80, - nil, nil, nil, 22, 23, nil, 26, 27, nil, 60, - 63, 19, nil, 40, nil, 61, 62, nil, nil, 33, - 71, 72, 77, nil, nil, nil, 39, nil, nil, 37, - nil, nil, nil, nil, 73, 74, 75, nil, 36, 76, - 28, nil, 80, nil, nil, nil, 22, 23, nil, 26, - 27, nil, 60, 63, 19, nil, 40, nil, 61, 62, - nil, nil, 33, 71, 72, 77, nil, nil, nil, 39, - nil, nil, 37, nil, nil, nil, nil, 73, 74, 75, - nil, 36, 76, 28, nil, 80, nil, nil, nil, 22, - 23, nil, 26, 27, nil, 60, 63, 19, nil, 40, - nil, 61, 62, nil, nil, 33, 71, 72, 77, nil, - nil, nil, 39, nil, nil, 37, nil, nil, nil, nil, - 73, 74, 75, nil, 36, 76, 28, nil, 80, nil, - nil, nil, 22, 23, nil, 26, 27, nil, 60, 63, - 19, nil, 40, nil, 61, 62, nil, nil, 33, 71, - 72, 77, nil, nil, nil, 39, nil, nil, 37, nil, - nil, nil, nil, 73, 74, 75, nil, 36, 76, 28, - nil, 80, nil, nil, nil, 22, 23, nil, 26, 27, - nil, 60, 63, 19, nil, 40, nil, 61, 62, nil, - nil, 33, 71, 72, 77, nil, nil, 160, 39, nil, - nil, 37, 5, 6, nil, nil, 73, 74, 75, nil, - 36, 76, 28, nil, 80, nil, nil, nil, 22, 23, - nil, 26, 27, nil, 60, 63, 19, nil, 40, nil, - 61, 62, nil, nil, 33, 71, 72, 77, nil, nil, - nil, 39, nil, nil, 37, nil, nil, nil, nil, 73, - 74, 75, nil, 36, 76, 28, nil, 80, nil, nil, - nil, 22, 23, nil, 26, 27, nil, 60, 63, 19, - 85, 86, 87, 88, nil, 84, nil, 33, 89, nil, - nil, nil, nil, 84, 91, 5, 6, 85, 86, 87, - 88, nil, 91, nil, nil, 89, nil, nil, nil, nil, - 84, nil, 92, 93, 94, 95, 96, 97, 98, 91, - 92, 93, 94, 95, 96, 97, 98, nil, 90, nil, - nil, nil, nil, nil, nil, nil, nil, 92, 93, 94, - 95, 96, 97, 98, nil, 90, 85, 86, 87, 88, - nil, nil, nil, nil, 89, nil, nil, nil, nil, 84, - nil, 85, 86, 87, 88, 156, nil, nil, 91, 89, - nil, nil, nil, nil, 84, nil, nil, nil, nil, nil, - nil, nil, nil, 91, nil, nil, 92, 93, 94, 95, - 96, 97, 98, nil, 90, nil, nil, nil, nil, nil, - nil, 92, 93, 94, 95, 96, 97, 98, nil, 90, - 85, 86, 87, 88, nil, nil, nil, nil, 89, nil, - nil, nil, nil, 84, nil, 165, 85, 86, 87, 88, - nil, nil, 91, nil, 89, nil, nil, nil, 167, 84, - nil, nil, nil, nil, nil, nil, nil, nil, 91, nil, - 92, 93, 94, 95, 96, 97, 98, nil, 90, nil, - nil, nil, nil, nil, nil, nil, 92, 93, 94, 95, - 96, 97, 98, nil, 90, 85, 86, 87, 88, nil, - nil, nil, nil, 89, nil, nil, nil, nil, 84, nil, - 85, 86, 87, 88, nil, nil, nil, 91, 89, nil, - nil, nil, nil, 84, nil, nil, nil, nil, nil, nil, - nil, nil, 91, nil, nil, 92, 93, 94, 95, 96, - 97, 98, nil, 90, nil, nil, nil, nil, nil, nil, - 92, 93, 94, 95, 96, 97, 98, nil, 90, 85, - 86, 87, 88, nil, nil, nil, nil, 89, nil, nil, - nil, nil, 84, nil, 85, 86, 87, 88, nil, nil, - nil, 91, 89, nil, nil, nil, nil, 84, nil, nil, - nil, nil, nil, nil, nil, nil, 91, nil, nil, 92, - 93, 94, 95, 96, 97, 98, nil, 90, nil, nil, - nil, nil, nil, nil, 92, 93, 94, 95, 96, 97, - 98, nil, 90, 85, 86, 87, 88, nil, nil, nil, - nil, 89, nil, nil, nil, nil, 84, nil, 85, 86, - 87, 88, nil, nil, nil, 91, 89, nil, nil, nil, - nil, 84, nil, nil, nil, nil, nil, nil, nil, nil, - 91, nil, nil, 92, 93, 94, 95, 96, 97, 98, - nil, 90, nil, nil, nil, nil, nil, nil, 92, 93, - 94, 95, 96, 97, 98, nil, 90, 85, 86, 87, - 88, nil, nil, nil, nil, 89, nil, nil, nil, nil, - 84, nil, 85, 86, 87, 88, nil, nil, nil, 91, - 89, nil, nil, nil, nil, 84, nil, nil, nil, nil, - nil, nil, nil, nil, 91, nil, nil, 92, 93, 94, - 95, 96, 97, 98, nil, 90, nil, nil, nil, nil, - nil, nil, 92, 93, 94, 95, 96, 97, 98, nil, - 90, 85, 86, 87, 88, nil, nil, nil, nil, 89, - nil, 160, nil, nil, 84, nil, 5, 6, 85, 86, - 87, 88, nil, 91, nil, nil, 89, nil, nil, nil, - nil, 84, nil, nil, nil, nil, nil, nil, nil, nil, - 91, 92, 93, 94, 95, 96, 97, 98, nil, 90, - nil, nil, nil, nil, nil, nil, nil, nil, 92, 93, - 94, 95, 96, 97, 98, nil, 90, 85, 86, 87, - 88, nil, nil, nil, nil, 89, nil, nil, nil, nil, - 84, nil, 85, 86, 87, 88, nil, nil, nil, 91, - 89, nil, nil, nil, nil, 84, nil, 181, nil, nil, - nil, nil, nil, nil, 91, nil, nil, 92, 93, 94, - 95, 96, 97, 98, nil, 90, nil, nil, nil, nil, - nil, nil, 92, 93, 94, 95, 96, 97, 98, nil, - 90, 85, 86, 87, 88, nil, nil, nil, nil, 89, - nil, nil, nil, nil, 84, nil, 85, 86, 87, 88, - nil, nil, nil, 91, 89, nil, nil, nil, nil, 84, - nil, nil, nil, nil, nil, nil, nil, nil, 91, nil, - nil, 92, 93, 94, 95, 96, 97, 98, nil, 90, - nil, nil, nil, nil, nil, nil, 92, 93, 94, 95, - 96, 97, 98, nil, 90, 87, 88, nil, nil, nil, - nil, 89, nil, nil, nil, nil, 84, 87, 88, nil, - nil, nil, nil, 89, nil, 91, nil, nil, 84, nil, - 87, 88, nil, nil, nil, nil, 89, 91, nil, nil, - nil, 84, nil, 92, 93, 94, 95, 96, 97, 98, - 91, 90, nil, nil, nil, 92, 93, 94, 95, 96, - 97, 98, nil, 90, nil, nil, nil, nil, 92, 93, - 94, 95, 96, 97, 98, 89, 90, 87, 88, nil, - 84, nil, nil, 89, nil, nil, nil, nil, 84, 91, - nil, nil, nil, nil, nil, nil, nil, 91, nil, nil, - 89, nil, nil, nil, nil, 84, nil, 92, 93, 94, - 95, 96, 97, 98, 91, 92, 93, 94, 95, 96, - 97, 98, nil, 90, nil, 89, nil, nil, nil, nil, - 84, nil, 92, 93, 94, 95, 96, 97, 98, 91, - 89, nil, nil, nil, nil, 84, nil, nil, nil, nil, - 89, nil, nil, nil, 91, 84, nil, 92, 93, 94, - 95, 96, 97, 98, 91, nil, nil, nil, nil, nil, - nil, nil, 92, 93, 94, 95, 96, 97, 98, nil, - nil, nil, 92, 93, 94, 95, 96, 97, 98 ] - -racc_action_check = [ - 1, 33, 1, 34, 1, 1, 40, 100, 81, 1, - 1, 1, 102, 161, 161, 1, 112, 33, 1, 1, - 1, 84, 100, 1, 1, 1, 33, 1, 1, 1, - 102, 1, 121, 131, 163, 1, 1, 84, 1, 1, - 178, 1, 1, 1, 179, 0, 84, 0, 0, 183, - nil, 1, 0, 0, 0, nil, nil, 80, 0, 80, - 80, 0, 0, 0, nil, nil, 0, 0, 0, nil, - 0, 0, 0, 128, 0, 128, 128, nil, 0, 0, - nil, 0, 0, nil, 0, 0, 0, nil, 19, nil, - 19, 19, nil, nil, 0, 19, 19, 19, nil, nil, - nil, 19, nil, nil, 19, nil, nil, nil, nil, 19, - 19, 19, nil, 19, 19, 19, nil, 19, nil, nil, - nil, 19, 19, nil, 19, 19, nil, 19, 19, 19, - nil, 23, nil, 23, 23, nil, nil, 19, 23, 23, - 23, nil, nil, nil, 23, nil, nil, 23, nil, nil, - nil, nil, 23, 23, 23, nil, 23, 23, 23, nil, - 23, nil, nil, nil, 23, 23, nil, 23, 23, nil, - 23, 23, 23, nil, 27, nil, 27, 27, nil, nil, - 23, 27, 27, 27, nil, nil, nil, 27, nil, nil, - 27, nil, nil, nil, nil, 27, 27, 27, nil, 27, - 27, 27, nil, 27, nil, nil, nil, 27, 27, nil, - 27, 27, nil, 27, 27, 27, nil, 37, nil, 37, - 37, nil, nil, 27, 37, 37, 37, nil, 37, nil, - 37, nil, nil, 37, nil, nil, 37, nil, 37, 37, - 37, nil, 37, 37, 37, nil, 37, nil, nil, nil, - 37, 37, nil, 37, 37, nil, 37, 37, 37, nil, - 39, nil, 39, 39, nil, nil, 37, 39, 39, 39, - nil, nil, nil, 39, nil, nil, 39, nil, nil, nil, - nil, 39, 39, 39, nil, 39, 39, 39, nil, 39, - nil, nil, nil, 39, 39, nil, 39, 39, nil, 39, - 39, 39, nil, 60, nil, 60, 60, nil, nil, 39, - 60, 60, 60, nil, nil, nil, 60, nil, nil, 60, - nil, nil, nil, nil, 60, 60, 60, nil, 60, 60, - 60, nil, 60, nil, nil, nil, 60, 60, nil, 60, - 60, nil, 60, 60, 60, nil, 61, nil, 61, 61, - nil, nil, 60, 61, 61, 61, nil, nil, nil, 61, - nil, nil, 61, nil, nil, nil, nil, 61, 61, 61, - nil, 61, 61, 61, nil, 61, nil, nil, nil, 61, - 61, nil, 61, 61, nil, 61, 61, 61, nil, 62, - nil, 62, 62, nil, nil, 61, 62, 62, 62, nil, - nil, nil, 62, nil, nil, 62, nil, nil, nil, nil, - 62, 62, 62, nil, 62, 62, 62, nil, 62, nil, - nil, nil, 62, 62, nil, 62, 62, nil, 62, 62, - 62, nil, 63, nil, 63, 63, nil, nil, 62, 63, - 63, 63, nil, nil, nil, 63, nil, nil, 63, nil, - nil, nil, nil, 63, 63, 63, nil, 63, 63, 63, - nil, 63, nil, nil, nil, 63, 63, nil, 63, 63, - nil, 63, 63, 63, nil, 85, nil, 85, 85, nil, - nil, 63, 85, 85, 85, nil, nil, nil, 85, nil, - nil, 85, nil, nil, nil, nil, 85, 85, 85, nil, - 85, 85, 85, nil, 85, nil, nil, nil, 85, 85, - nil, 85, 85, nil, 85, 85, 85, nil, 86, nil, - 86, 86, nil, nil, 85, 86, 86, 86, nil, nil, - nil, 86, nil, nil, 86, nil, nil, nil, nil, 86, - 86, 86, nil, 86, 86, 86, nil, 86, nil, nil, - nil, 86, 86, nil, 86, 86, nil, 86, 86, 86, - nil, 87, nil, 87, 87, nil, nil, 86, 87, 87, - 87, nil, nil, nil, 87, nil, nil, 87, nil, nil, - nil, nil, 87, 87, 87, nil, 87, 87, 87, nil, - 87, nil, nil, nil, 87, 87, nil, 87, 87, nil, - 87, 87, 87, nil, 88, nil, 88, 88, nil, nil, - 87, 88, 88, 88, nil, nil, nil, 88, nil, nil, - 88, nil, nil, nil, nil, 88, 88, 88, nil, 88, - 88, 88, nil, 88, nil, nil, nil, 88, 88, nil, - 88, 88, nil, 88, 88, 88, nil, 89, nil, 89, - 89, nil, nil, 88, 89, 89, 89, nil, nil, nil, - 89, nil, nil, 89, nil, nil, nil, nil, 89, 89, - 89, nil, 89, 89, 89, nil, 89, nil, nil, nil, - 89, 89, nil, 89, 89, nil, 89, 89, 89, nil, - 90, nil, 90, 90, nil, nil, 89, 90, 90, 90, - nil, nil, nil, 90, nil, nil, 90, nil, nil, nil, - nil, 90, 90, 90, nil, 90, 90, 90, nil, 90, - nil, nil, nil, 90, 90, nil, 90, 90, nil, 90, - 90, 90, nil, 91, nil, 91, 91, nil, nil, 90, - 91, 91, 91, nil, nil, nil, 91, nil, nil, 91, - nil, nil, nil, nil, 91, 91, 91, nil, 91, 91, - 91, nil, 91, nil, nil, nil, 91, 91, nil, 91, - 91, nil, 91, 91, 91, nil, 92, nil, 92, 92, - nil, nil, 91, 92, 92, 92, nil, nil, nil, 92, - nil, nil, 92, nil, nil, nil, nil, 92, 92, 92, - nil, 92, 92, 92, nil, 92, nil, nil, nil, 92, - 92, nil, 92, 92, nil, 92, 92, 92, nil, 93, - nil, 93, 93, nil, nil, 92, 93, 93, 93, nil, - nil, nil, 93, nil, nil, 93, nil, nil, nil, nil, - 93, 93, 93, nil, 93, 93, 93, nil, 93, nil, - nil, nil, 93, 93, nil, 93, 93, nil, 93, 93, - 93, nil, 94, nil, 94, 94, nil, nil, 93, 94, - 94, 94, nil, nil, nil, 94, nil, nil, 94, nil, - nil, nil, nil, 94, 94, 94, nil, 94, 94, 94, - nil, 94, nil, nil, nil, 94, 94, nil, 94, 94, - nil, 94, 94, 94, nil, 95, nil, 95, 95, nil, - nil, 94, 95, 95, 95, nil, nil, nil, 95, nil, - nil, 95, nil, nil, nil, nil, 95, 95, 95, nil, - 95, 95, 95, nil, 95, nil, nil, nil, 95, 95, - nil, 95, 95, nil, 95, 95, 95, nil, 96, nil, - 96, 96, nil, nil, 95, 96, 96, 96, nil, nil, - nil, 96, nil, nil, 96, nil, nil, nil, nil, 96, - 96, 96, nil, 96, 96, 96, nil, 96, nil, nil, - nil, 96, 96, nil, 96, 96, nil, 96, 96, 96, - nil, 97, nil, 97, 97, nil, nil, 96, 97, 97, - 97, nil, nil, nil, 97, nil, nil, 97, nil, nil, - nil, nil, 97, 97, 97, nil, 97, 97, 97, nil, - 97, nil, nil, nil, 97, 97, nil, 97, 97, nil, - 97, 97, 97, nil, 98, nil, 98, 98, nil, nil, - 97, 98, 98, 98, nil, nil, nil, 98, nil, nil, - 98, nil, nil, nil, nil, 98, 98, 98, nil, 98, - 98, 98, nil, 98, nil, nil, nil, 98, 98, nil, - 98, 98, nil, 98, 98, 98, nil, 111, nil, 111, - 111, nil, nil, 98, 111, 111, 111, nil, nil, 111, - 111, nil, nil, 111, 111, 111, nil, nil, 111, 111, - 111, nil, 111, 111, 111, nil, 111, nil, nil, nil, - 111, 111, nil, 111, 111, nil, 111, 111, 111, nil, - 123, nil, 123, 123, nil, nil, 111, 123, 123, 123, - nil, nil, nil, 123, nil, nil, 123, nil, nil, nil, - nil, 123, 123, 123, nil, 123, 123, 123, nil, 123, - nil, nil, nil, 123, 123, nil, 123, 123, nil, 123, - 123, 123, nil, 129, nil, 129, 129, nil, nil, 123, - 129, 129, 129, nil, nil, nil, 129, nil, nil, 129, - nil, nil, nil, nil, 129, 129, 129, nil, 129, 129, - 129, nil, 129, nil, nil, nil, 129, 129, nil, 129, - 129, nil, 129, 129, 129, nil, 153, nil, 153, 153, - nil, nil, 129, 153, 153, 153, nil, nil, nil, 153, - nil, nil, 153, nil, nil, nil, nil, 153, 153, 153, - nil, 153, 153, 153, nil, 153, nil, nil, nil, 153, - 153, nil, 153, 153, nil, 153, 153, 153, nil, 155, - nil, 155, 155, nil, nil, 153, 155, 155, 155, nil, - nil, nil, 155, nil, nil, 155, nil, nil, nil, nil, - 155, 155, 155, nil, 155, 155, 155, nil, 155, nil, - nil, nil, 155, 155, nil, 155, 155, nil, 155, 155, - 155, nil, 156, nil, 156, 156, nil, nil, 155, 156, - 156, 156, nil, nil, nil, 156, nil, nil, 156, nil, - nil, nil, nil, 156, 156, 156, nil, 156, 156, 156, - nil, 156, nil, nil, nil, 156, 156, nil, 156, 156, - nil, 156, 156, 156, nil, 157, nil, 157, 157, nil, - nil, 156, 157, 157, 157, nil, nil, 157, 157, nil, - nil, 157, 157, 157, nil, nil, 157, 157, 157, nil, - 157, 157, 157, nil, 157, nil, nil, nil, 157, 157, - nil, 157, 157, nil, 157, 157, 157, nil, 180, nil, - 180, 180, nil, nil, 157, 180, 180, 180, nil, nil, - nil, 180, nil, nil, 180, nil, nil, nil, nil, 180, - 180, 180, nil, 180, 180, 180, nil, 180, nil, nil, - nil, 180, 180, nil, 180, 180, nil, 180, 180, 180, - 3, 3, 3, 3, nil, 142, nil, 180, 3, nil, - nil, nil, nil, 3, 142, 3, 3, 99, 99, 99, - 99, nil, 3, nil, nil, 99, nil, nil, nil, nil, - 99, nil, 142, 142, 142, 142, 142, 142, 142, 99, - 3, 3, 3, 3, 3, 3, 3, nil, 3, nil, - nil, nil, nil, nil, nil, nil, nil, 99, 99, 99, - 99, 99, 99, 99, nil, 99, 101, 101, 101, 101, - nil, nil, nil, nil, 101, nil, nil, nil, nil, 101, - nil, 104, 104, 104, 104, 104, nil, nil, 101, 104, - nil, nil, nil, nil, 104, nil, nil, nil, nil, nil, - nil, nil, nil, 104, nil, nil, 101, 101, 101, 101, - 101, 101, 101, nil, 101, nil, nil, nil, nil, nil, - nil, 104, 104, 104, 104, 104, 104, 104, nil, 104, - 117, 117, 117, 117, nil, nil, nil, nil, 117, nil, - nil, nil, nil, 117, nil, 117, 122, 122, 122, 122, - nil, nil, 117, nil, 122, nil, nil, nil, 122, 122, - nil, nil, nil, nil, nil, nil, nil, nil, 122, nil, - 117, 117, 117, 117, 117, 117, 117, nil, 117, nil, - nil, nil, nil, nil, nil, nil, 122, 122, 122, 122, - 122, 122, 122, nil, 122, 144, 144, 144, 144, nil, - nil, nil, nil, 144, nil, nil, nil, nil, 144, nil, - 145, 145, 145, 145, nil, nil, nil, 144, 145, nil, - nil, nil, nil, 145, nil, nil, nil, nil, nil, nil, - nil, nil, 145, nil, nil, 144, 144, 144, 144, 144, - 144, 144, nil, 144, nil, nil, nil, nil, nil, nil, - 145, 145, 145, 145, 145, 145, 145, nil, 145, 146, - 146, 146, 146, nil, nil, nil, nil, 146, nil, nil, - nil, nil, 146, nil, 147, 147, 147, 147, nil, nil, - nil, 146, 147, nil, nil, nil, nil, 147, nil, nil, - nil, nil, nil, nil, nil, nil, 147, nil, nil, 146, - 146, 146, 146, 146, 146, 146, nil, 146, nil, nil, - nil, nil, nil, nil, 147, 147, 147, 147, 147, 147, - 147, nil, 147, 148, 148, 148, 148, nil, nil, nil, - nil, 148, nil, nil, nil, nil, 148, nil, 149, 149, - 149, 149, nil, nil, nil, 148, 149, nil, nil, nil, - nil, 149, nil, nil, nil, nil, nil, nil, nil, nil, - 149, nil, nil, 148, 148, 148, 148, 148, 148, 148, - nil, 148, nil, nil, nil, nil, nil, nil, 149, 149, - 149, 149, 149, 149, 149, nil, 149, 150, 150, 150, - 150, nil, nil, nil, nil, 150, nil, nil, nil, nil, - 150, nil, 151, 151, 151, 151, nil, nil, nil, 150, - 151, nil, nil, nil, nil, 151, nil, nil, nil, nil, - nil, nil, nil, nil, 151, nil, nil, 150, 150, 150, - 150, 150, 150, 150, nil, 150, nil, nil, nil, nil, - nil, nil, 151, 151, 151, 151, 151, 151, 151, nil, - 151, 158, 158, 158, 158, nil, nil, nil, nil, 158, - nil, 158, nil, nil, 158, nil, 158, 158, 168, 168, - 168, 168, nil, 158, nil, nil, 168, nil, nil, nil, - nil, 168, nil, nil, nil, nil, nil, nil, nil, nil, - 168, 158, 158, 158, 158, 158, 158, 158, nil, 158, - nil, nil, nil, nil, nil, nil, nil, nil, 168, 168, - 168, 168, 168, 168, 168, nil, 168, 171, 171, 171, - 171, nil, nil, nil, nil, 171, nil, nil, nil, nil, - 171, nil, 173, 173, 173, 173, nil, nil, nil, 171, - 173, nil, nil, nil, nil, 173, nil, 171, nil, nil, - nil, nil, nil, nil, 173, nil, nil, 171, 171, 171, - 171, 171, 171, 171, nil, 171, nil, nil, nil, nil, - nil, nil, 173, 173, 173, 173, 173, 173, 173, nil, - 173, 175, 175, 175, 175, nil, nil, nil, nil, 175, - nil, nil, nil, nil, 175, nil, 185, 185, 185, 185, - nil, nil, nil, 175, 185, nil, nil, nil, nil, 185, - nil, nil, nil, nil, nil, nil, nil, nil, 185, nil, - nil, 175, 175, 175, 175, 175, 175, 175, nil, 175, - nil, nil, nil, nil, nil, nil, 185, 185, 185, 185, - 185, 185, 185, nil, 185, 125, 125, nil, nil, nil, - nil, 125, nil, nil, nil, nil, 125, 126, 126, nil, - nil, nil, nil, 126, nil, 125, nil, nil, 126, nil, - 138, 138, nil, nil, nil, nil, 138, 126, nil, nil, - nil, 138, nil, 125, 125, 125, 125, 125, 125, 125, - 138, 125, nil, nil, nil, 126, 126, 126, 126, 126, - 126, 126, nil, 126, nil, nil, nil, nil, 138, 138, - 138, 138, 138, 138, 138, 124, 138, 139, 139, nil, - 124, nil, nil, 139, nil, nil, nil, nil, 139, 124, - nil, nil, nil, nil, nil, nil, nil, 139, nil, nil, - 127, nil, nil, nil, nil, 127, nil, 124, 124, 124, - 124, 124, 124, 124, 127, 139, 139, 139, 139, 139, - 139, 139, nil, 139, nil, 140, nil, nil, nil, nil, - 140, nil, 127, 127, 127, 127, 127, 127, 127, 140, - 141, nil, nil, nil, nil, 141, nil, nil, nil, nil, - 143, nil, nil, nil, 141, 143, nil, 140, 140, 140, - 140, 140, 140, 140, 143, nil, nil, nil, nil, nil, - nil, nil, 141, 141, 141, 141, 141, 141, 141, nil, - nil, nil, 143, 143, 143, 143, 143, 143, 143 ] - -racc_action_pointer = [ - 43, 0, nil, 1416, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 86, - nil, nil, nil, 129, nil, nil, nil, 172, nil, nil, - nil, nil, nil, -1, -15, nil, nil, 215, nil, 258, - 3, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 301, 344, 387, 430, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 27, 8, nil, nil, 19, 473, 516, 559, 602, 645, - 688, 731, 774, 817, 860, 903, 946, 989, 1032, 1433, - -15, 1482, -10, nil, 1497, nil, nil, nil, nil, nil, - nil, 1075, 14, nil, nil, nil, nil, 1546, nil, nil, - nil, 13, 1562, 1118, 2123, 2059, 2071, 2148, 43, 1161, - nil, 3, nil, nil, nil, nil, nil, nil, 2084, 2131, - 2173, 2188, 1408, 2198, 1611, 1626, 1675, 1690, 1739, 1754, - 1803, 1818, nil, 1204, nil, 1247, 1290, 1333, 1867, nil, - nil, -8, nil, 31, nil, nil, nil, nil, 1884, nil, - nil, 1933, nil, 1948, nil, 1997, nil, nil, 21, 42, - 1376, nil, nil, 36, nil, 2012, nil ] - -racc_action_default = [ - -140, -140, -1, -4, -5, -6, -7, -10, -11, -12, - -13, -14, -15, -16, -17, -18, -19, -20, -21, -23, - -24, -25, -26, -140, -30, -31, -32, -140, -37, -55, - -56, -57, -60, -140, -63, -64, -65, -140, -73, -140, - -76, -77, -78, -79, -80, -81, -82, -83, -84, -85, - -86, -87, -88, -89, -90, -91, -107, -108, -109, -110, - -140, -140, -140, -140, -115, -116, -117, -118, -119, -120, - -121, -122, -123, -124, -125, -126, -127, -128, -129, -130, - -140, -140, -2, -3, -140, -140, -140, -140, -140, -140, - -140, -140, -140, -140, -140, -140, -140, -140, -140, -22, - -140, -28, -140, -34, -140, -61, -62, -74, -38, -39, - -40, -140, -140, -46, -47, -48, -49, -69, -66, -67, - -68, -71, -140, -140, -111, -112, -113, -114, -140, -140, - -133, -135, -136, -137, -138, 187, -58, -59, -93, -94, - -95, -96, -97, -98, -99, -100, -101, -102, -103, -104, - -105, -106, -27, -140, -33, -140, -140, -140, -4, -43, - -44, -140, -50, -52, -54, -70, -72, -75, -92, -131, - -134, -140, -139, -29, -35, -36, -41, -42, -9, -140, - -140, -132, -8, -140, -51, -53, -45 ] - -racc_goto_table = [ - 99, 82, 103, 83, 101, 1, 105, 130, 104, 183, - 100, 102, 159, 162, 121, 108, 109, 110, 117, 111, - 122, 115, 112, 161, 116, 107, 118, 119, 120, 128, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 124, 125, 126, 127, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 170, nil, 136, 176, 177, - nil, nil, nil, nil, nil, nil, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 184, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 158, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 168, nil, nil, nil, nil, nil, - 171, nil, nil, nil, nil, nil, 157, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 174, nil, nil, nil, 173, nil, 104, 175, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 82, 83, nil, - nil, 185 ] - -racc_goto_check = [ - 3, 2, 24, 4, 3, 1, 40, 77, 3, 5, - 20, 23, 30, 35, 25, 26, 27, 28, 3, 29, - 3, 31, 32, 33, 34, 43, 44, 45, 46, 75, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 3, 3, 3, 3, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 77, nil, 40, 30, 30, - nil, nil, nil, nil, nil, nil, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 35, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 3, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 3, nil, nil, nil, nil, nil, - 3, nil, nil, nil, nil, nil, 1, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 24, nil, nil, nil, 3, nil, 3, 3, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 2, 4, nil, - nil, 3 ] - -racc_goto_pointer = [ - nil, 5, 0, -19, 0, -169, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - -13, nil, nil, -16, -25, -23, -22, -21, -20, -18, - -99, -16, -15, -89, -13, -99, nil, nil, nil, nil, - -27, nil, nil, -9, -11, -10, -9, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, -51, nil, -73, nil ] - -racc_goto_default = [ - nil, nil, 2, 3, 4, nil, 7, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, - nil, 24, 25, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 163, 29, 30, 31, - 32, 34, 35, 38, nil, nil, nil, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 64, 65, 66, 67, - 68, 69, 70, 78, 79, nil, 132, nil, 131 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 54, :_reduce_none, - 2, 54, :_reduce_2, - 2, 55, :_reduce_3, - 1, 55, :_reduce_4, - 1, 55, :_reduce_5, - 1, 57, :_reduce_none, - 1, 57, :_reduce_none, - 1, 58, :_reduce_none, - 0, 58, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 68, :_reduce_none, - 1, 68, :_reduce_none, - 2, 69, :_reduce_22, - 1, 70, :_reduce_23, - 1, 66, :_reduce_none, - 1, 66, :_reduce_none, - 1, 71, :_reduce_26, - 3, 72, :_reduce_27, - 1, 73, :_reduce_28, - 3, 73, :_reduce_29, - 1, 67, :_reduce_none, - 1, 67, :_reduce_none, - 1, 74, :_reduce_32, - 3, 75, :_reduce_33, - 1, 76, :_reduce_34, - 3, 76, :_reduce_35, - 3, 77, :_reduce_36, - 1, 64, :_reduce_37, - 1, 78, :_reduce_none, - 1, 78, :_reduce_none, - 1, 78, :_reduce_none, - 3, 79, :_reduce_41, - 3, 80, :_reduce_42, - 2, 81, :_reduce_43, - 1, 83, :_reduce_44, - 5, 84, :_reduce_45, - 1, 85, :_reduce_46, - 1, 87, :_reduce_47, - 1, 82, :_reduce_none, - 1, 82, :_reduce_none, - 1, 86, :_reduce_none, - 3, 86, :_reduce_none, - 1, 88, :_reduce_52, - 3, 88, :_reduce_53, - 1, 89, :_reduce_54, - 1, 63, :_reduce_none, - 1, 63, :_reduce_none, - 1, 63, :_reduce_none, - 3, 90, :_reduce_58, - 3, 90, :_reduce_59, - 1, 91, :_reduce_60, - 2, 92, :_reduce_61, - 2, 92, :_reduce_62, - 1, 93, :_reduce_none, - 1, 93, :_reduce_none, - 1, 95, :_reduce_65, - 2, 96, :_reduce_66, - 1, 97, :_reduce_none, - 1, 97, :_reduce_none, - 1, 98, :_reduce_none, - 2, 98, :_reduce_none, - 1, 99, :_reduce_none, - 2, 99, :_reduce_none, - 1, 94, :_reduce_73, - 2, 94, :_reduce_74, - 3, 60, :_reduce_75, - 1, 65, :_reduce_76, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 1, 61, :_reduce_none, - 3, 100, :_reduce_92, - 3, 101, :_reduce_93, - 3, 102, :_reduce_94, - 3, 103, :_reduce_95, - 3, 104, :_reduce_96, - 3, 105, :_reduce_97, - 3, 106, :_reduce_98, - 3, 107, :_reduce_99, - 3, 108, :_reduce_100, - 3, 109, :_reduce_101, - 3, 110, :_reduce_102, - 3, 111, :_reduce_103, - 3, 112, :_reduce_104, - 3, 113, :_reduce_105, - 3, 114, :_reduce_106, - 1, 62, :_reduce_none, - 1, 62, :_reduce_none, - 1, 62, :_reduce_none, - 1, 62, :_reduce_none, - 2, 115, :_reduce_111, - 2, 116, :_reduce_112, - 2, 117, :_reduce_113, - 2, 118, :_reduce_114, - 1, 59, :_reduce_none, - 1, 59, :_reduce_none, - 1, 59, :_reduce_none, - 1, 59, :_reduce_none, - 1, 59, :_reduce_none, - 1, 59, :_reduce_none, - 1, 59, :_reduce_none, - 1, 120, :_reduce_122, - 1, 119, :_reduce_123, - 1, 122, :_reduce_124, - 1, 123, :_reduce_125, - 1, 124, :_reduce_126, - 1, 125, :_reduce_127, - 1, 121, :_reduce_128, - 1, 121, :_reduce_none, - 1, 121, :_reduce_none, - 3, 126, :_reduce_131, - 3, 129, :_reduce_132, - 1, 128, :_reduce_133, - 2, 128, :_reduce_134, - 1, 130, :_reduce_135, - 1, 130, :_reduce_136, - 2, 127, :_reduce_137, - 1, 131, :_reduce_138, - 2, 131, :_reduce_139 ] - -racc_reduce_n = 140 - -racc_shift_n = 187 - -racc_token_table = { - false => 0, - :error => 1, - :IDENTIFIER => 2, - :EQUAL => 3, - :PLUS => 4, - :MINUS => 5, - :ASTERISK => 6, - :FWD_SLASH => 7, - :COLON => 8, - :FLOAT => 9, - :INTEGER => 10, - :STRING => 11, - :EXPO => 12, - :INDENT => 13, - :OUTDENT => 14, - :OPAREN => 15, - :CPAREN => 16, - :DOT => 17, - :SIGNATURE => 18, - :NL => 19, - :EOF => 20, - :PIPE => 21, - :COMMA => 22, - :NIL => 23, - :TRUE => 24, - :FALSE => 25, - :EQUALITY => 26, - :CALL => 27, - :SELF => 28, - :CONSTANT => 29, - :CHAR => 30, - :DOUBLE_TICK_STRING => 31, - :DOUBLE_TICK_STRING_END => 32, - :INTERPOLATE_START => 33, - :INTERPOLATE_END => 34, - :BOX => 35, - :LSQUARE => 36, - :RSQUARE => 37, - :FACES => 38, - :LFACE => 39, - :RFACE => 40, - :BANG => 41, - :TILDE => 42, - :RETURN => 43, - :NOT_EQUALITY => 44, - :OR => 45, - :AND => 46, - :GT => 47, - :LT => 48, - :GTE => 49, - :LTE => 50, - :AT => 51, - :PERCENT => 52 } - -racc_nt_base = 53 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "IDENTIFIER", - "EQUAL", - "PLUS", - "MINUS", - "ASTERISK", - "FWD_SLASH", - "COLON", - "FLOAT", - "INTEGER", - "STRING", - "EXPO", - "INDENT", - "OUTDENT", - "OPAREN", - "CPAREN", - "DOT", - "SIGNATURE", - "NL", - "EOF", - "PIPE", - "COMMA", - "NIL", - "TRUE", - "FALSE", - "EQUALITY", - "CALL", - "SELF", - "CONSTANT", - "CHAR", - "DOUBLE_TICK_STRING", - "DOUBLE_TICK_STRING_END", - "INTERPOLATE_START", - "INTERPOLATE_END", - "BOX", - "LSQUARE", - "RSQUARE", - "FACES", - "LFACE", - "RFACE", - "BANG", - "TILDE", - "RETURN", - "NOT_EQUALITY", - "OR", - "AND", - "GT", - "LT", - "GTE", - "LTE", - "AT", - "PERCENT", - "$start", - "statements", - "statement", - "expr", - "eol", - "nlq", - "literal", - "grouped_expr", - "binary_op", - "unary_op", - "method_call", - "constant", - "variable", - "array", - "hash", - "return", - "return_expr", - "return_nil", - "empty_array", - "array_list", - "array_items", - "empty_hash", - "hash_list", - "hash_items", - "hash_item", - "indented", - "indented_w_stmts", - "indented_w_expr", - "indented_wo_stmts", - "indent", - "outdent", - "indent_w_args", - "indent_pipe", - "indent_args", - "indent_wo_args", - "indent_arg", - "arg_var", - "method_call_on_object", - "method_call_on_self", - "method_call_on_closure", - "call_signature", - "call_arguments", - "call_simple_name", - "call_argument", - "call_passed_arg", - "call_passed_simple", - "call_passed_indented", - "assignment", - "addition", - "subtraction", - "multiplication", - "division", - "exponentiation", - "modulo", - "equality", - "not_equality", - "logical_or", - "logical_and", - "greater_than", - "less_than", - "greater_or_eq", - "less_or_eq", - "unary_not", - "unary_plus", - "unary_minus", - "unary_complement", - "integer", - "float", - "string", - "nil", - "true", - "false", - "self", - "interpolated_string", - "empty_string", - "interpolated_string_contents", - "interpolation", - "interpolated_string_chunk", - "chars" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -# reduce 1 omitted - -module_eval(<<'.,.,', 'huia.y', 44) - def _reduce_2(val, _values, result) - return scope - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 46) - def _reduce_3(val, _values, result) - return scope.append val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 47) - def _reduce_4(val, _values, result) - return scope.append val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 48) - def _reduce_5(val, _values, result) - return scope - result - end -.,., - -# reduce 6 omitted - -# reduce 7 omitted - -# reduce 8 omitted - -# reduce 9 omitted - -# reduce 10 omitted - -# reduce 11 omitted - -# reduce 12 omitted - -# reduce 13 omitted - -# reduce 14 omitted - -# reduce 15 omitted - -# reduce 16 omitted - -# reduce 17 omitted - -# reduce 18 omitted - -# reduce 19 omitted - -# reduce 20 omitted - -# reduce 21 omitted - -module_eval(<<'.,.,', 'huia.y', 66) - def _reduce_22(val, _values, result) - return n(:Return, val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 67) - def _reduce_23(val, _values, result) - return n(:Return, n(:Nil)) - result - end -.,., - -# reduce 24 omitted - -# reduce 25 omitted - -module_eval(<<'.,.,', 'huia.y', 72) - def _reduce_26(val, _values, result) - return n :Array - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 74) - def _reduce_27(val, _values, result) - return val[1] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 75) - def _reduce_28(val, _values, result) - return n :Array, [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 76) - def _reduce_29(val, _values, result) - val[0].append(val[2]); return val[0] - result - end -.,., - -# reduce 30 omitted - -# reduce 31 omitted - -module_eval(<<'.,.,', 'huia.y', 80) - def _reduce_32(val, _values, result) - return n :Hash - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 81) - def _reduce_33(val, _values, result) - return val[1] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 82) - def _reduce_34(val, _values, result) - return n :Hash, val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 83) - def _reduce_35(val, _values, result) - val[0].append(val[2]); return val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 84) - def _reduce_36(val, _values, result) - return n :HashItem, val[0], val[2] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 86) - def _reduce_37(val, _values, result) - return constant val[0] - result - end -.,., - -# reduce 38 omitted - -# reduce 39 omitted - -# reduce 40 omitted - -module_eval(<<'.,.,', 'huia.y', 91) - def _reduce_41(val, _values, result) - return val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 92) - def _reduce_42(val, _values, result) - return val[0].append(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 93) - def _reduce_43(val, _values, result) - return val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 94) - def _reduce_44(val, _values, result) - return pop_scope - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 97) - def _reduce_45(val, _values, result) - return val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 98) - def _reduce_46(val, _values, result) - return push_scope - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 99) - def _reduce_47(val, _values, result) - return push_scope - result - end -.,., - -# reduce 48 omitted - -# reduce 49 omitted - -# reduce 50 omitted - -# reduce 51 omitted - -module_eval(<<'.,.,', 'huia.y', 105) - def _reduce_52(val, _values, result) - return scope.add_argument val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 106) - def _reduce_53(val, _values, result) - return n :Assignment, val[0], val[2] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 107) - def _reduce_54(val, _values, result) - return n :Variable, val[0] - result - end -.,., - -# reduce 55 omitted - -# reduce 56 omitted - -# reduce 57 omitted - -module_eval(<<'.,.,', 'huia.y', 112) - def _reduce_58(val, _values, result) - return n :MethodCall, val[0], val[2] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 113) - def _reduce_59(val, _values, result) - return n :MethodCall, val[0], n(:CallSignature, val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 114) - def _reduce_60(val, _values, result) - return n :MethodCall, scope_instance, val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 116) - def _reduce_61(val, _values, result) - return n :MethodCall, this_closure, val[1] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 117) - def _reduce_62(val, _values, result) - return n :MethodCall, this_closure, n(:CallSignature, val[1]) - result - end -.,., - -# reduce 63 omitted - -# reduce 64 omitted - -module_eval(<<'.,.,', 'huia.y', 121) - def _reduce_65(val, _values, result) - return n :CallSignature, val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 122) - def _reduce_66(val, _values, result) - return n :CallSignature, val[0], [val[1]] - result - end -.,., - -# reduce 67 omitted - -# reduce 68 omitted - -# reduce 69 omitted - -# reduce 70 omitted - -# reduce 71 omitted - -# reduce 72 omitted - -module_eval(<<'.,.,', 'huia.y', 129) - def _reduce_73(val, _values, result) - return val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 130) - def _reduce_74(val, _values, result) - return val[0].concat_signature val[1] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 132) - def _reduce_75(val, _values, result) - return n :Expression, val[1] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 134) - def _reduce_76(val, _values, result) - return allocate_local val[0] - result - end -.,., - -# reduce 77 omitted - -# reduce 78 omitted - -# reduce 79 omitted - -# reduce 80 omitted - -# reduce 81 omitted - -# reduce 82 omitted - -# reduce 83 omitted - -# reduce 84 omitted - -# reduce 85 omitted - -# reduce 86 omitted - -# reduce 87 omitted - -# reduce 88 omitted - -# reduce 89 omitted - -# reduce 90 omitted - -# reduce 91 omitted - -module_eval(<<'.,.,', 'huia.y', 152) - def _reduce_92(val, _values, result) - return allocate_local_assignment val[0], val[2] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 153) - def _reduce_93(val, _values, result) - return binary val[0], val[2], 'plus:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 154) - def _reduce_94(val, _values, result) - return binary val[0], val[2], 'minus:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 155) - def _reduce_95(val, _values, result) - return binary val[0], val[2], 'multiplyBy:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 156) - def _reduce_96(val, _values, result) - return binary val[0], val[2], 'divideBy:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 157) - def _reduce_97(val, _values, result) - return binary val[0], val[2], 'toThePowerOf:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 158) - def _reduce_98(val, _values, result) - return binary val[0], val[2], 'moduloOf:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 159) - def _reduce_99(val, _values, result) - return binary val[0], val[2], 'isEqualTo:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 160) - def _reduce_100(val, _values, result) - return binary val[0], val[2], 'isNotEqualTo:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 161) - def _reduce_101(val, _values, result) - return binary val[0], val[2], 'logicalOr:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 162) - def _reduce_102(val, _values, result) - return binary val[0], val[2], 'logicalAnd:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 163) - def _reduce_103(val, _values, result) - return binary val[0], val[2], 'isGreaterThan:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 164) - def _reduce_104(val, _values, result) - return binary val[0], val[2], 'isLessThan:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 165) - def _reduce_105(val, _values, result) - return binary val[0], val[2], 'isGreaterOrEqualTo:' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 166) - def _reduce_106(val, _values, result) - return binary val[0], val[2], 'isLessOrEqualTo:' - result - end -.,., - -# reduce 107 omitted - -# reduce 108 omitted - -# reduce 109 omitted - -# reduce 110 omitted - -module_eval(<<'.,.,', 'huia.y', 173) - def _reduce_111(val, _values, result) - return unary val[1], 'unaryNot' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 174) - def _reduce_112(val, _values, result) - return unary val[1], 'unaryPlus' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 175) - def _reduce_113(val, _values, result) - return unary val[1], 'unaryMinus' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 176) - def _reduce_114(val, _values, result) - return unary val[1], 'unaryComplement' - result - end -.,., - -# reduce 115 omitted - -# reduce 116 omitted - -# reduce 117 omitted - -# reduce 118 omitted - -# reduce 119 omitted - -# reduce 120 omitted - -# reduce 121 omitted - -module_eval(<<'.,.,', 'huia.y', 186) - def _reduce_122(val, _values, result) - return n :Float, val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 187) - def _reduce_123(val, _values, result) - return n :Integer, val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 188) - def _reduce_124(val, _values, result) - return n :Nil - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 189) - def _reduce_125(val, _values, result) - return n :True - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 190) - def _reduce_126(val, _values, result) - return n :False - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 191) - def _reduce_127(val, _values, result) - return n :Self - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 193) - def _reduce_128(val, _values, result) - return n :String, val[0] - result - end -.,., - -# reduce 129 omitted - -# reduce 130 omitted - -module_eval(<<'.,.,', 'huia.y', 197) - def _reduce_131(val, _values, result) - return val[1] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 198) - def _reduce_132(val, _values, result) - return val[1] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 199) - def _reduce_133(val, _values, result) - return n :InterpolatedString, val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 200) - def _reduce_134(val, _values, result) - val[0].append(val[1]); return val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 201) - def _reduce_135(val, _values, result) - return val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 202) - def _reduce_136(val, _values, result) - return to_string(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 203) - def _reduce_137(val, _values, result) - return n :String, '' - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 205) - def _reduce_138(val, _values, result) - return n :String, val[0] - result - end -.,., - -module_eval(<<'.,.,', 'huia.y', 206) - def _reduce_139(val, _values, result) - val[0].append(val[1]); return val[0] - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module Huia diff --git a/test/racc/regress/journey b/test/racc/regress/journey deleted file mode 100644 index 3daf81dac0..0000000000 --- a/test/racc/regress/journey +++ /dev/null @@ -1,222 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - - -require 'journey/parser_extras' -module Journey - class Parser < Racc::Parser -##### State transition tables begin ### - -racc_action_table = [ - 17, 21, 13, 15, 14, 7, nil, 16, 8, 19, - 13, 15, 14, 7, 23, 16, 8, 19, 13, 15, - 14, 7, nil, 16, 8, 13, 15, 14, 7, nil, - 16, 8, 13, 15, 14, 7, nil, 16, 8 ] - -racc_action_check = [ - 1, 17, 1, 1, 1, 1, nil, 1, 1, 1, - 20, 20, 20, 20, 20, 20, 20, 20, 0, 0, - 0, 0, nil, 0, 0, 7, 7, 7, 7, nil, - 7, 7, 19, 19, 19, 19, nil, 19, 19 ] - -racc_action_pointer = [ - 16, 0, nil, nil, nil, nil, nil, 23, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 1, nil, 30, - 8, nil, nil, nil ] - -racc_action_default = [ - -18, -18, -2, -3, -4, -5, -6, -18, -9, -10, - -11, -12, -13, -14, -15, -16, -17, -18, -1, -18, - -18, 24, -8, -7 ] - -racc_goto_table = [ - 18, 1, nil, nil, nil, nil, nil, nil, 20, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 22, 18 ] - -racc_goto_check = [ - 2, 1, nil, nil, nil, nil, nil, nil, 1, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 2, 2 ] - -racc_goto_pointer = [ - nil, 1, -1, nil, nil, nil, nil, nil, nil, nil, - nil ] - -racc_goto_default = [ - nil, nil, 2, 3, 4, 5, 6, 9, 10, 11, - 12 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 2, 11, :_reduce_1, - 1, 11, :_reduce_2, - 1, 11, :_reduce_none, - 1, 12, :_reduce_none, - 1, 12, :_reduce_none, - 1, 12, :_reduce_none, - 3, 15, :_reduce_7, - 3, 13, :_reduce_8, - 1, 16, :_reduce_9, - 1, 14, :_reduce_none, - 1, 14, :_reduce_none, - 1, 14, :_reduce_none, - 1, 14, :_reduce_none, - 1, 19, :_reduce_14, - 1, 17, :_reduce_15, - 1, 18, :_reduce_16, - 1, 20, :_reduce_17 ] - -racc_reduce_n = 18 - -racc_shift_n = 24 - -racc_token_table = { - false => 0, - :error => 1, - :SLASH => 2, - :LITERAL => 3, - :SYMBOL => 4, - :LPAREN => 5, - :RPAREN => 6, - :DOT => 7, - :STAR => 8, - :OR => 9 } - -racc_nt_base = 10 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "SLASH", - "LITERAL", - "SYMBOL", - "LPAREN", - "RPAREN", - "DOT", - "STAR", - "OR", - "$start", - "expressions", - "expression", - "or", - "terminal", - "group", - "star", - "symbol", - "literal", - "slash", - "dot" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'journey.y', 6) - def _reduce_1(val, _values, result) - result = Cat.new(val.first, val.last) - result - end -.,., - -module_eval(<<'.,.,', 'journey.y', 7) - def _reduce_2(val, _values, result) - result = val.first - result - end -.,., - -# reduce 3 omitted - -# reduce 4 omitted - -# reduce 5 omitted - -# reduce 6 omitted - -module_eval(<<'.,.,', 'journey.y', 16) - def _reduce_7(val, _values, result) - result = Group.new(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'journey.y', 19) - def _reduce_8(val, _values, result) - result = Or.new([val.first, val.last]) - result - end -.,., - -module_eval(<<'.,.,', 'journey.y', 22) - def _reduce_9(val, _values, result) - result = Star.new(Symbol.new(val.last)) - result - end -.,., - -# reduce 10 omitted - -# reduce 11 omitted - -# reduce 12 omitted - -# reduce 13 omitted - -module_eval(<<'.,.,', 'journey.y', 31) - def _reduce_14(val, _values, result) - result = Slash.new('/') - result - end -.,., - -module_eval(<<'.,.,', 'journey.y', 34) - def _reduce_15(val, _values, result) - result = Symbol.new(val.first) - result - end -.,., - -module_eval(<<'.,.,', 'journey.y', 37) - def _reduce_16(val, _values, result) - result = Literal.new(val.first) - result - end -.,., - -module_eval(<<'.,.,', 'journey.y', 39) - def _reduce_17(val, _values, result) - result = Dot.new(val.first) - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module Journey diff --git a/test/racc/regress/liquor b/test/racc/regress/liquor deleted file mode 100644 index 9fa2ca4da0..0000000000 --- a/test/racc/regress/liquor +++ /dev/null @@ -1,885 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' -module Liquor - class Parser < Racc::Parser - -module_eval(<<'...end liquor.y/module_eval...', 'liquor.y', 216) - attr_reader :errors, :ast - - def initialize(tags={}) - super() - - @errors = [] - @ast = nil - @tags = tags - end - - def success? - @errors.empty? - end - - def parse(string, name='(code)') - @errors.clear - @name = name - @ast = nil - - begin - @stream = Lexer.lex(string, @name, @tags) - @ast = do_parse - rescue Liquor::SyntaxError => e - @errors << e - end - - success? - end - - def next_token - tok = @stream.shift - [ tok[0], tok ] if tok - end - - TOKEN_NAME_MAP = { - :comma => ',', - :dot => '.', - :lblock => '{%', - :rblock => '%}', - :linterp => '{{', - :rinterp => '}}', - :lbracket => '[', - :rbracket => ']', - :lparen => '(', - :rparen => ')', - :pipe => '|', - :op_not => '!', - :op_mul => '*', - :op_div => '/', - :op_mod => '%', - :op_plus => '+', - :op_minus => '-', - :op_eq => '==', - :op_neq => '!=', - :op_lt => '<', - :op_leq => '<=', - :op_gt => '>', - :op_geq => '>=', - :keyword => 'keyword argument name', - :kwarg => 'keyword argument', - :ident => 'identifier', - } - - def on_error(error_token_id, error_token, value_stack) - if token_to_str(error_token_id) == "$end" - raise Liquor::SyntaxError.new("unexpected end of program", { - file: @name - }) - else - type, (loc, value) = error_token - type = TOKEN_NAME_MAP[type] || type - - raise Liquor::SyntaxError.new("unexpected token `#{type}'", loc) - end - end - - def retag(nodes) - loc = nodes.map { |node| node[1] }.compact - first, *, last = loc - return first if last.nil? - - { - file: first[:file], - line: first[:line], - start: first[:start], - end: last[:end], - } - end - - def reduce_tag_args(list) - list.each_slice(2).reduce([]) { |args, (k, v)| - if v[0] == :block - args << [ :blockarg, retag([ k, v ]), k, v[2] || [] ] - else - args << [ :kwarg, retag([ k, v ]), k, v ] - end - } - end -...end liquor.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 76, 26, 26, 6, 7, 22, 5, 6, 25, 25, - 5, 28, 32, 36, 37, 34, 35, 31, 29, 27, - 33, 2, 30, 26, 26, 2, 6, 23, 41, 5, - 25, 25, 38, 39, 28, 32, 36, 37, 34, 35, - 31, 29, 27, 33, 2, 30, 40, 26, 96, 6, - 24, 97, 5, 43, 25, 38, 39, 28, 32, 36, - 37, 34, 35, 31, 29, 27, 33, 2, 30, 26, - 54, 70, 77, 26, 75, 26, 25, 52, 38, 39, - 25, 43, 25, 28, 32, 36, 37, 34, 35, 31, - 29, 27, 33, 26, 30, 84, 26, 51, 6, 96, - 25, 5, 97, 25, 38, 39, 28, 32, 36, 37, - 34, 35, 31, 29, 27, 33, 2, 30, 74, 26, - 87, 82, 96, 74, 70, 97, 25, 38, 39, 28, - 32, 36, 37, 34, 35, 31, 29, 27, 33, 94, - 30, 98, 26, 107, 6, 111, 52, 5, nil, 25, - 38, 39, 28, 32, 36, 37, 34, 35, 31, 29, - 27, 33, 2, 30, nil, 26, 51, 6, nil, 74, - 5, nil, 25, 38, 39, 28, 32, 36, 37, 34, - 35, 31, 29, 27, 33, 2, 30, nil, 26, nil, - nil, nil, 102, nil, nil, 25, 38, 39, 28, 32, - 36, 37, 34, 35, 31, 29, 27, 33, nil, 30, - nil, 26, 96, nil, nil, 97, nil, nil, 25, 38, - 39, 28, 32, 36, 37, 34, 35, 31, 29, 27, - 33, nil, 30, nil, 26, nil, nil, nil, nil, nil, - nil, 25, 38, 39, 28, 32, 36, 37, 34, 35, - 31, 29, 27, 33, nil, 30, 13, 15, nil, 13, - 15, 21, nil, 14, 21, 38, 14, nil, nil, nil, - 18, nil, nil, 18, 19, nil, nil, 19, nil, 13, - 15, nil, 16, nil, 21, 16, 14, nil, nil, 13, - 15, nil, nil, 18, 21, nil, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, 52, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, 51, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, 74, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, 81, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, nil, 18, 21, 16, 14, 19, nil, 13, - 15, nil, 26, 18, 21, 16, 14, 19, nil, 25, - nil, 101, 28, 18, nil, 16, nil, 19, 31, 29, - 27, 106, 26, 30, nil, 16, nil, nil, nil, 25, - nil, nil, 28, nil, 26, nil, nil, nil, 31, 29, - 27, 25, nil, 30, 28, nil, 26, nil, nil, nil, - 31, 29, 27, 25, nil, 30, 28, nil, 26, nil, - nil, nil, 31, 29, 27, 25, nil, 30, 28, nil, - 26, nil, nil, nil, 31, 29, 27, 25, nil, 30, - 28, nil, 26, nil, nil, nil, 31, 29, 27, 25, - nil, 30, 28, 32, 36, 37, 34, 35, 31, 29, - 27, 33, 26, 30, 26, nil, nil, nil, nil, 25, - nil, 25, 28, nil, 28, nil, nil, nil, nil, 29, - 27, 29, 27 ] - -racc_action_check = [ - 47, 47, 45, 0, 1, 6, 0, 2, 47, 45, - 2, 47, 47, 47, 47, 47, 47, 47, 47, 47, - 47, 0, 47, 46, 11, 2, 3, 7, 12, 3, - 46, 11, 47, 47, 11, 11, 11, 11, 11, 11, - 11, 11, 11, 11, 3, 11, 11, 44, 94, 4, - 11, 94, 4, 13, 44, 11, 11, 44, 44, 44, - 44, 44, 44, 44, 44, 44, 44, 4, 44, 55, - 26, 40, 48, 49, 44, 56, 55, 49, 44, 44, - 49, 54, 56, 49, 49, 49, 49, 49, 49, 49, - 49, 49, 49, 57, 49, 69, 53, 49, 81, 107, - 57, 81, 107, 53, 49, 49, 53, 53, 53, 53, - 53, 53, 53, 53, 53, 53, 81, 53, 70, 71, - 72, 53, 111, 71, 84, 111, 71, 53, 53, 71, - 71, 71, 71, 71, 71, 71, 71, 71, 71, 91, - 71, 96, 79, 103, 101, 109, 79, 101, nil, 79, - 71, 71, 79, 79, 79, 79, 79, 79, 79, 79, - 79, 79, 101, 79, nil, 88, 79, 106, nil, 88, - 106, nil, 88, 79, 79, 88, 88, 88, 88, 88, - 88, 88, 88, 88, 88, 106, 88, nil, 99, nil, - nil, nil, 99, nil, nil, 99, 88, 88, 99, 99, - 99, 99, 99, 99, 99, 99, 99, 99, nil, 99, - nil, 104, 104, nil, nil, 104, nil, nil, 104, 99, - 99, 104, 104, 104, 104, 104, 104, 104, 104, 104, - 104, nil, 104, nil, 67, nil, nil, nil, nil, nil, - nil, 67, 104, 104, 67, 67, 67, 67, 67, 67, - 67, 67, 67, 67, nil, 67, 5, 5, nil, 14, - 14, 5, nil, 5, 14, 67, 14, nil, nil, nil, - 5, nil, nil, 14, 5, nil, nil, 14, nil, 18, - 18, nil, 5, nil, 18, 14, 18, nil, nil, 19, - 19, nil, nil, 18, 19, nil, 19, 18, nil, 21, - 21, nil, nil, 19, 21, 18, 21, 19, nil, 22, - 22, 22, nil, 21, 22, 19, 22, 21, nil, 25, - 25, nil, nil, 22, 25, 21, 25, 22, nil, 27, - 27, 22, nil, 25, 27, 22, 27, 25, nil, 28, - 28, nil, nil, 27, 28, 25, 28, 27, nil, 29, - 29, nil, nil, 28, 29, 27, 29, 28, nil, 30, - 30, nil, nil, 29, 30, 28, 30, 29, nil, 31, - 31, nil, nil, 30, 31, 29, 31, 30, nil, 32, - 32, nil, nil, 31, 32, 30, 32, 31, nil, 33, - 33, nil, nil, 32, 33, 31, 33, 32, nil, 34, - 34, nil, nil, 33, 34, 32, 34, 33, nil, 35, - 35, nil, nil, 34, 35, 33, 35, 34, nil, 36, - 36, nil, nil, 35, 36, 34, 36, 35, nil, 37, - 37, nil, nil, 36, 37, 35, 37, 36, nil, 38, - 38, nil, nil, 37, 38, 36, 38, 37, nil, 39, - 39, nil, nil, 38, 39, 37, 39, 38, nil, 43, - 43, 43, nil, 39, 43, 38, 43, 39, nil, 52, - 52, nil, nil, 43, 52, 39, 52, 43, nil, 74, - 74, nil, nil, 52, 74, 43, 74, 52, nil, 76, - 76, 52, nil, 74, 76, 52, 76, 74, nil, 97, - 97, nil, nil, 76, 97, 74, 97, 76, nil, 102, - 102, nil, 60, 97, 102, 76, 102, 97, nil, 60, - nil, 97, 60, 102, nil, 97, nil, 102, 60, 60, - 60, 102, 61, 60, nil, 102, nil, nil, nil, 61, - nil, nil, 61, nil, 62, nil, nil, nil, 61, 61, - 61, 62, nil, 61, 62, nil, 63, nil, nil, nil, - 62, 62, 62, 63, nil, 62, 63, nil, 64, nil, - nil, nil, 63, 63, 63, 64, nil, 63, 64, nil, - 65, nil, nil, nil, 64, 64, 64, 65, nil, 64, - 65, nil, 66, nil, nil, nil, 65, 65, 65, 66, - nil, 65, 66, 66, 66, 66, 66, 66, 66, 66, - 66, 66, 58, 66, 59, nil, nil, nil, nil, 58, - nil, 59, 58, nil, 59, nil, nil, nil, nil, 58, - 58, 59, 59 ] - -racc_action_pointer = [ - -5, 4, -1, 18, 41, 251, 0, 27, nil, nil, - nil, 21, -1, 41, 254, nil, nil, nil, 274, 284, - nil, 294, 304, nil, nil, 314, 65, 324, 334, 344, - 354, 364, 374, 384, 394, 404, 414, 424, 434, 444, - 66, nil, nil, 454, 44, -1, 20, -2, 44, 70, - nil, nil, 464, 93, 69, 66, 72, 90, 609, 611, - 509, 529, 541, 553, 565, 577, 589, 231, nil, 70, - 111, 116, 90, nil, 474, nil, 484, nil, nil, 139, - nil, 90, nil, nil, 119, nil, nil, nil, 162, nil, - nil, 130, nil, nil, 44, nil, 114, 494, nil, 185, - nil, 136, 504, 134, 208, nil, 159, 95, nil, 136, - nil, 118, nil ] - -racc_action_default = [ - -1, -57, -1, -1, -1, -57, -57, -57, -2, -3, - -4, -57, -57, -7, -57, -9, -10, -11, -57, -57, - -31, -35, -57, 113, -5, -57, -57, -57, -57, -57, - -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, - -57, -6, -12, -40, -57, -16, -17, -34, -57, -57, - -46, -47, -57, -57, -15, -18, -19, -20, -21, -22, - -23, -24, -25, -26, -27, -28, -29, -30, -41, -43, - -40, -40, -57, -38, -57, -8, -35, -32, -45, -57, - -48, -1, -13, -14, -57, -44, -37, -36, -40, -33, - -50, -57, -42, -39, -57, -49, -57, -57, -51, -57, - -52, -1, -57, -57, -57, -54, -1, -57, -56, -57, - -53, -57, -55 ] - -racc_goto_table = [ - 1, 11, 8, 9, 10, 48, 68, 12, 42, 50, - 44, 72, 80, 73, 45, 46, 100, 105, 49, nil, - nil, 53, nil, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 78, nil, nil, 71, - 85, 86, 95, nil, nil, nil, nil, nil, 79, 83, - 92, nil, 108, nil, nil, 110, nil, nil, 93, 112, - 89, nil, nil, nil, nil, nil, 90, nil, nil, nil, - 88, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 91, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 99, nil, nil, nil, nil, 104, nil, - nil, 103, nil, nil, nil, nil, 109 ] - -racc_goto_check = [ - 1, 4, 1, 1, 1, 9, 12, 5, 8, 14, - 4, 10, 15, 11, 4, 4, 17, 18, 4, nil, - nil, 4, nil, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 14, nil, nil, 4, - 11, 11, 16, nil, nil, nil, nil, nil, 4, 8, - 12, nil, 16, nil, nil, 16, nil, nil, 11, 16, - 9, nil, nil, nil, nil, nil, 14, nil, nil, nil, - 4, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 1, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 4, nil, nil, nil, nil, 4, nil, - nil, 1, nil, nil, nil, nil, 1 ] - -racc_goto_pointer = [ - nil, 0, nil, nil, -4, 2, nil, nil, -5, -16, - -32, -30, -34, nil, -13, -40, -52, -81, -85 ] - -racc_goto_default = [ - nil, nil, 3, 4, 47, nil, 20, 17, nil, nil, - nil, nil, nil, 69, nil, nil, nil, nil, nil ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 0, 37, :_reduce_1, - 2, 37, :_reduce_2, - 2, 37, :_reduce_3, - 2, 37, :_reduce_4, - 3, 38, :_reduce_5, - 3, 38, :_reduce_6, - 1, 42, :_reduce_none, - 3, 42, :_reduce_8, - 1, 40, :_reduce_none, - 1, 40, :_reduce_none, - 1, 40, :_reduce_none, - 2, 40, :_reduce_12, - 4, 40, :_reduce_13, - 4, 40, :_reduce_14, - 3, 40, :_reduce_15, - 2, 40, :_reduce_16, - 2, 40, :_reduce_17, - 3, 40, :_reduce_18, - 3, 40, :_reduce_19, - 3, 40, :_reduce_20, - 3, 40, :_reduce_21, - 3, 40, :_reduce_22, - 3, 40, :_reduce_23, - 3, 40, :_reduce_24, - 3, 40, :_reduce_25, - 3, 40, :_reduce_26, - 3, 40, :_reduce_27, - 3, 40, :_reduce_28, - 3, 40, :_reduce_29, - 3, 40, :_reduce_30, - 1, 40, :_reduce_none, - 3, 43, :_reduce_32, - 3, 45, :_reduce_33, - 1, 45, :_reduce_34, - 0, 45, :_reduce_35, - 3, 44, :_reduce_36, - 2, 46, :_reduce_37, - 1, 46, :_reduce_38, - 3, 47, :_reduce_39, - 0, 47, :_reduce_40, - 3, 41, :_reduce_41, - 3, 48, :_reduce_42, - 1, 48, :_reduce_43, - 2, 49, :_reduce_44, - 4, 39, :_reduce_45, - 3, 39, :_reduce_46, - 1, 50, :_reduce_47, - 2, 50, :_reduce_48, - 4, 51, :_reduce_49, - 2, 51, :_reduce_50, - 2, 52, :_reduce_51, - 2, 52, :_reduce_52, - 4, 53, :_reduce_53, - 3, 53, :_reduce_54, - 4, 54, :_reduce_55, - 2, 54, :_reduce_56 ] - -racc_reduce_n = 57 - -racc_shift_n = 113 - -racc_token_table = { - false => 0, - :error => 1, - :comma => 2, - :dot => 3, - :endtag => 4, - :ident => 5, - :integer => 6, - :keyword => 7, - :lblock => 8, - :lblock2 => 9, - :lbracket => 10, - :linterp => 11, - :lparen => 12, - :op_div => 13, - :op_eq => 14, - :op_gt => 15, - :op_geq => 16, - :op_lt => 17, - :op_leq => 18, - :op_minus => 19, - :op_mod => 20, - :op_mul => 21, - :op_neq => 22, - :op_not => 23, - :op_plus => 24, - :pipe => 25, - :plaintext => 26, - :rblock => 27, - :rbracket => 28, - :rinterp => 29, - :rparen => 30, - :string => 31, - :tag_ident => 32, - :op_uminus => 33, - :op_and => 34, - :op_or => 35 } - -racc_nt_base = 36 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "comma", - "dot", - "endtag", - "ident", - "integer", - "keyword", - "lblock", - "lblock2", - "lbracket", - "linterp", - "lparen", - "op_div", - "op_eq", - "op_gt", - "op_geq", - "op_lt", - "op_leq", - "op_minus", - "op_mod", - "op_mul", - "op_neq", - "op_not", - "op_plus", - "pipe", - "plaintext", - "rblock", - "rbracket", - "rinterp", - "rparen", - "string", - "tag_ident", - "op_uminus", - "op_and", - "op_or", - "$start", - "block", - "interp", - "tag", - "expr", - "filter_chain", - "primary_expr", - "tuple", - "function_args", - "tuple_content", - "function_args_inside", - "function_keywords", - "filter_chain_cont", - "filter_call", - "tag_first_cont", - "tag_first_cont2", - "tag_next_cont", - "tag_next_cont2", - "tag_next_cont3" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'liquor.y', 47) - def _reduce_1(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 49) - def _reduce_2(val, _values, result) - result = [ val[0], *val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 51) - def _reduce_3(val, _values, result) - result = [ val[0], *val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 53) - def _reduce_4(val, _values, result) - result = [ val[0], *val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 57) - def _reduce_5(val, _values, result) - result = [ :interp, retag(val), val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 59) - def _reduce_6(val, _values, result) - result = [ :interp, retag(val), val[1] ] - result - end -.,., - -# reduce 7 omitted - -module_eval(<<'.,.,', 'liquor.y', 64) - def _reduce_8(val, _values, result) - result = [ val[1][0], retag(val), *val[1][2..-1] ] - result - end -.,., - -# reduce 9 omitted - -# reduce 10 omitted - -# reduce 11 omitted - -module_eval(<<'.,.,', 'liquor.y', 71) - def _reduce_12(val, _values, result) - result = [ :call, retag(val), val[0], val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 73) - def _reduce_13(val, _values, result) - result = [ :index, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 75) - def _reduce_14(val, _values, result) - result = [ :external, retag(val), val[0], val[2], val[3] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 77) - def _reduce_15(val, _values, result) - result = [ :external, retag(val), val[0], val[2], nil ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 79) - def _reduce_16(val, _values, result) - result = [ :uminus, retag(val), val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 81) - def _reduce_17(val, _values, result) - result = [ :not, retag(val), val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 83) - def _reduce_18(val, _values, result) - result = [ :mul, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 85) - def _reduce_19(val, _values, result) - result = [ :div, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 87) - def _reduce_20(val, _values, result) - result = [ :mod, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 89) - def _reduce_21(val, _values, result) - result = [ :plus, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 91) - def _reduce_22(val, _values, result) - result = [ :minus, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 93) - def _reduce_23(val, _values, result) - result = [ :eq, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 95) - def _reduce_24(val, _values, result) - result = [ :neq, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 97) - def _reduce_25(val, _values, result) - result = [ :lt, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 99) - def _reduce_26(val, _values, result) - result = [ :leq, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 101) - def _reduce_27(val, _values, result) - result = [ :gt, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 103) - def _reduce_28(val, _values, result) - result = [ :geq, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 105) - def _reduce_29(val, _values, result) - result = [ :and, retag(val), val[0], val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 107) - def _reduce_30(val, _values, result) - result = [ :or, retag(val), val[0], val[2] ] - result - end -.,., - -# reduce 31 omitted - -module_eval(<<'.,.,', 'liquor.y', 112) - def _reduce_32(val, _values, result) - result = [ :tuple, retag(val), val[1].compact ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 116) - def _reduce_33(val, _values, result) - result = [ val[0], *val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 118) - def _reduce_34(val, _values, result) - result = [ val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 120) - def _reduce_35(val, _values, result) - result = [ ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 124) - def _reduce_36(val, _values, result) - result = [ :args, retag(val), *val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 128) - def _reduce_37(val, _values, result) - result = [ val[0], val[1][2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 130) - def _reduce_38(val, _values, result) - result = [ nil, val[0][2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 134) - def _reduce_39(val, _values, result) - name = val[0][2].to_sym - tail = val[2][2] - loc = retag([ val[0], val[1] ]) - - if tail.include? name - @errors << SyntaxError.new("duplicate keyword argument `#{val[0][2]}'", - tail[name][1]) - end - - hash = { - name => [ val[1][0], loc, *val[1][2..-1] ] - }.merge(tail) - - result = [ :keywords, retag([ loc, val[2] ]), hash ] - - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 150) - def _reduce_40(val, _values, result) - result = [ :keywords, nil, {} ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 154) - def _reduce_41(val, _values, result) - result = [ val[0], *val[2] ]. - reduce { |tree, node| node[3][2] = tree; node } - - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 160) - def _reduce_42(val, _values, result) - result = [ val[0], *val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 162) - def _reduce_43(val, _values, result) - result = [ val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 166) - def _reduce_44(val, _values, result) - ident_loc = val[0][1] - empty_args_loc = { line: ident_loc[:line], - start: ident_loc[:end] + 1, - end: ident_loc[:end] + 1, } - result = [ :call, val[0][1], val[0], - [ :args, val[1][1] || empty_args_loc, nil, val[1][2] ] ] - - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 176) - def _reduce_45(val, _values, result) - result = [ :tag, retag(val), val[1], val[2], *reduce_tag_args(val[3][2]) ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 178) - def _reduce_46(val, _values, result) - result = [ :tag, retag(val), val[1], nil, *reduce_tag_args(val[2][2]) ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 186) - def _reduce_47(val, _values, result) - result = [ :cont, retag(val), [] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 188) - def _reduce_48(val, _values, result) - result = [ :cont, retag(val), [ val[0], *val[1][2] ] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 192) - def _reduce_49(val, _values, result) - result = [ :cont2, val[0][1], [ [:block, val[0][1], val[1] ], *val[3] ] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 194) - def _reduce_50(val, _values, result) - result = [ :cont2, retag(val), [ val[0], *val[1][2] ] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 198) - def _reduce_51(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 200) - def _reduce_52(val, _values, result) - result = [ val[0], *val[1] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 204) - def _reduce_53(val, _values, result) - result = [ [:block, val[0][1], val[1] ], *val[3] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 206) - def _reduce_54(val, _values, result) - result = [ val[0], val[1], *val[2] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 210) - def _reduce_55(val, _values, result) - result = [ [:block, val[0][1], val[1] ], *val[3] ] - result - end -.,., - -module_eval(<<'.,.,', 'liquor.y', 212) - def _reduce_56(val, _values, result) - result = [ val[0], *val[1] ] - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module Liquor diff --git a/test/racc/regress/machete b/test/racc/regress/machete deleted file mode 100644 index 6297fe2ac9..0000000000 --- a/test/racc/regress/machete +++ /dev/null @@ -1,833 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' -module Machete - class Parser < Racc::Parser - -module_eval(<<'...end machete.y/module_eval...', 'machete.y', 175) - -include Matchers - -class SyntaxError < StandardError; end - -def parse(input) - @input = input - @pos = 0 - - do_parse -end - -private - -def integer_value(value) - if value =~ /^0[bB]/ - value[2..-1].to_i(2) - elsif value =~ /^0[oO]/ - value[2..-1].to_i(8) - elsif value =~ /^0[dD]/ - value[2..-1].to_i(10) - elsif value =~ /^0[xX]/ - value[2..-1].to_i(16) - elsif value =~ /^0/ - value.to_i(8) - else - value.to_i - end -end - -def symbol_value(value) - value[1..-1].to_sym -end - -def string_value(value) - quote = value[0..0] - if quote == "'" - value[1..-2].gsub("\\\\", "\\").gsub("\\'", "'") - elsif quote == '"' - value[1..-2]. - gsub("\\\\", "\\"). - gsub('\\"', '"'). - gsub("\\n", "\n"). - gsub("\\t", "\t"). - gsub("\\r", "\r"). - gsub("\\f", "\f"). - gsub("\\v", "\v"). - gsub("\\a", "\a"). - gsub("\\e", "\e"). - gsub("\\b", "\b"). - gsub("\\s", "\s"). - gsub(/\\([0-7]{1,3})/) { $1.to_i(8).chr }. - gsub(/\\x([0-9a-fA-F]{1,2})/) { $1.to_i(16).chr } - else - raise "Unknown quote: #{quote.inspect}." - end -end - -REGEXP_OPTIONS = { - 'i' => Regexp::IGNORECASE, - 'm' => Regexp::MULTILINE, - 'x' => Regexp::EXTENDED -} - -def regexp_value(value) - /\A\/(.*)\/([imx]*)\z/ =~ value - pattern, options = $1, $2 - - Regexp.new(pattern, options.chars.map { |ch| REGEXP_OPTIONS[ch] }.inject(:|)) -end - -# "^" needs to be here because if it were among operators recognized by -# METHOD_NAME, "^=" would be recognized as two tokens. -SIMPLE_TOKENS = [ - "|", - "<", - ">", - ",", - "=", - "^=", - "^", - "$=", - "[", - "]", - "*=", - "*", - "+", - "?", - "{", - "}" -] - -COMPLEX_TOKENS = [ - [:NIL, /^nil/], - [:TRUE, /^true/], - [:FALSE, /^false/], - # INTEGER needs to be before METHOD_NAME, otherwise e.g. "+1" would be - # recognized as two tokens. - [ - :INTEGER, - /^ - [+-]? # sign - ( - 0[bB][01]+(_[01]+)* # binary (prefixed) - | - 0[oO][0-7]+(_[0-7]+)* # octal (prefixed) - | - 0[dD]\d+(_\d+)* # decimal (prefixed) - | - 0[xX][0-9a-fA-F]+(_[0-9a-fA-F]+)* # hexadecimal (prefixed) - | - 0[0-7]*(_[0-7]+)* # octal (unprefixed) - | - [1-9]\d*(_\d+)* # decimal (unprefixed) - ) - /x - ], - [ - :SYMBOL, - /^ - : - ( - # class name - [A-Z][a-zA-Z0-9_]* - | - # regular method name - [a-z_][a-zA-Z0-9_]*[?!=]? - | - # instance variable name - @[a-zA-Z_][a-zA-Z0-9_]* - | - # class variable name - @@[a-zA-Z_][a-zA-Z0-9_]* - | - # operator (sorted by length, then alphabetically) - (<=>|===|\[\]=|\*\*|\+@|-@|<<|<=|==|=~|>=|>>|\[\]|[%&*+\-\/<>^`|~]) - ) - /x - ], - [ - :STRING, - /^ - ( - ' # sinqle-quoted string - ( - \\[\\'] # escape - | - [^'] # regular character - )* - ' - | - " # double-quoted string - ( - \\ # escape - ( - [\\"ntrfvaebs] # one-character escape - | - [0-7]{1,3} # octal number escape - | - x[0-9a-fA-F]{1,2} # hexadecimal number escape - ) - | - [^"] # regular character - )* - " - ) - /x - ], - [ - :REGEXP, - /^ - \/ - ( - \\ # escape - ( - [\\\/ntrfvaebs\(\)\[\]\{\}\-\.\?\*\+\|\^\$] # one-character escape - | - [0-7]{2,3} # octal number escape - | - x[0-9a-fA-F]{1,2} # hexadecimal number escape - ) - | - [^\/] # regular character - )* - \/ - [imx]* - /x - ], - # ANY, EVEN and ODD need to be before METHOD_NAME, otherwise they would be - # recognized as method names. - [:ANY, /^any/], - [:EVEN, /^even/], - [:ODD, /^odd/], - # We exclude "*", "+", "<", ">", "^" and "|" from method names since they are - # lexed as simple tokens. This is because they have also other meanings in - # Machette patterns beside Ruby method names. - [ - :METHOD_NAME, - /^ - ( - # regular name - [a-z_][a-zA-Z0-9_]*[?!=]? - | - # operator (sorted by length, then alphabetically) - (<=>|===|\[\]=|\*\*|\+@|-@|<<|<=|==|=~|>=|>>|\[\]|[%&\-\/`~]) - ) - /x - ], - [:CLASS_NAME, /^[A-Z][a-zA-Z0-9_]*/] -] - -def next_token - skip_whitespace - - return false if remaining_input.empty? - - # Complex tokens need to be before simple tokens, otherwise e.g. "<<" would be - # recognized as two tokens. - - COMPLEX_TOKENS.each do |type, regexp| - if remaining_input =~ regexp - @pos += $&.length - return [type, $&] - end - end - - SIMPLE_TOKENS.each do |token| - if remaining_input[0...token.length] == token - @pos += token.length - return [token, token] - end - end - - raise SyntaxError, "Unexpected character: #{remaining_input[0..0].inspect}." -end - -def skip_whitespace - if remaining_input =~ /\A^[ \t\r\n]+/ - @pos += $&.length - end -end - -def remaining_input - @input[@pos..-1] -end - -def on_error(error_token_id, error_value, value_stack) - raise SyntaxError, "Unexpected token: #{error_value.inspect}." -end -...end machete.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 75, 19, 9, 10, 11, 12, 13, 14, 15, 16, - 66, 67, 68, 7, 24, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 74, 8, 7, 47, 9, 10, - 11, 12, 13, 14, 15, 16, 48, 18, 8, 7, - 71, 9, 10, 11, 12, 13, 14, 15, 16, 72, - 70, 8, 7, 73, 9, 10, 11, 12, 13, 14, - 15, 16, 69, 18, 8, 7, 30, 31, 32, 51, - 52, 53, 54, 33, 34, 35, 29, 8, 41, 38, - 39, 76, 30, 31, 32, 77, 36, 37, 40, 33, - 34, 35, 29, nil, 41, 38, 39, 18, 49, 50, - 62, 63, 36, 37, 40, 43, 44, 55, 64, 65, - 45, 46, 57, 58, nil, nil, nil, nil, nil, 56 ] - -racc_action_check = [ - 70, 7, 0, 0, 0, 0, 0, 0, 0, 0, - 54, 54, 54, 0, 17, 8, 8, 8, 8, 8, - 8, 8, 8, 1, 70, 0, 8, 21, 18, 18, - 18, 18, 18, 18, 18, 18, 22, 1, 8, 18, - 56, 48, 48, 48, 48, 48, 48, 48, 48, 57, - 55, 18, 48, 58, 51, 51, 51, 51, 51, 51, - 51, 51, 55, 61, 48, 51, 19, 19, 19, 28, - 28, 28, 28, 19, 19, 19, 19, 51, 19, 19, - 19, 71, 50, 50, 50, 75, 19, 19, 19, 50, - 50, 50, 50, nil, 50, 50, 50, 20, 26, 26, - 52, 52, 50, 50, 50, 20, 20, 46, 53, 53, - 20, 20, 46, 46, nil, nil, nil, nil, nil, 46 ] - -racc_action_pointer = [ - 0, 23, nil, nil, nil, nil, nil, -14, 13, nil, - nil, nil, nil, nil, nil, nil, nil, 14, 26, 64, - 83, 1, 19, nil, nil, nil, 82, nil, 51, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 102, nil, 39, nil, - 80, 52, 94, 102, 4, 33, 35, 20, 24, nil, - nil, 49, nil, nil, nil, nil, nil, nil, nil, nil, - -5, 52, nil, nil, nil, 56, nil, nil ] - -racc_action_default = [ - -56, -56, -1, -3, -4, -5, -6, -7, -33, -48, - -49, -50, -51, -52, -53, -54, -55, -56, -56, -56, - -37, -56, -34, -35, 78, -2, -56, -9, -56, -19, - -20, -21, -22, -23, -24, -25, -26, -27, -28, -29, - -30, -31, -38, -39, -40, -41, -56, -32, -56, -8, - -56, -56, -56, -56, -56, -56, -56, -56, -56, -36, - -10, -11, -12, -15, -13, -16, -14, -17, -18, -42, - -56, -56, -46, -47, -43, -56, -44, -45 ] - -racc_goto_table = [ - 1, 23, 27, 25, 26, 21, 22, 42, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 60, nil, nil, nil, nil, nil, nil, - nil, 59, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 61 ] - -racc_goto_check = [ - 1, 12, 8, 2, 7, 10, 11, 13, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 8, nil, nil, nil, nil, nil, nil, - nil, 12, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 1 ] - -racc_goto_pointer = [ - nil, 0, -15, nil, nil, nil, nil, -15, -17, nil, - -3, -2, -7, -13 ] - -racc_goto_default = [ - nil, 20, 2, 3, 4, 5, 6, nil, nil, 28, - nil, nil, nil, nil ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 31, :_reduce_none, - 3, 31, :_reduce_2, - 1, 32, :_reduce_none, - 1, 32, :_reduce_none, - 1, 32, :_reduce_none, - 1, 32, :_reduce_none, - 1, 33, :_reduce_7, - 4, 33, :_reduce_8, - 1, 37, :_reduce_none, - 3, 37, :_reduce_10, - 3, 38, :_reduce_11, - 3, 38, :_reduce_12, - 3, 38, :_reduce_13, - 3, 38, :_reduce_14, - 3, 38, :_reduce_15, - 3, 38, :_reduce_16, - 3, 38, :_reduce_17, - 3, 38, :_reduce_18, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 1, 39, :_reduce_none, - 3, 34, :_reduce_32, - 0, 40, :_reduce_33, - 1, 40, :_reduce_none, - 1, 41, :_reduce_35, - 3, 41, :_reduce_36, - 1, 42, :_reduce_none, - 2, 42, :_reduce_38, - 1, 43, :_reduce_39, - 1, 43, :_reduce_40, - 1, 43, :_reduce_41, - 3, 43, :_reduce_42, - 4, 43, :_reduce_43, - 4, 43, :_reduce_44, - 5, 43, :_reduce_45, - 3, 43, :_reduce_46, - 3, 43, :_reduce_47, - 1, 35, :_reduce_48, - 1, 35, :_reduce_49, - 1, 35, :_reduce_50, - 1, 35, :_reduce_51, - 1, 35, :_reduce_52, - 1, 35, :_reduce_53, - 1, 35, :_reduce_54, - 1, 36, :_reduce_55 ] - -racc_reduce_n = 56 - -racc_shift_n = 78 - -racc_token_table = { - false => 0, - :error => 1, - :NIL => 2, - :TRUE => 3, - :FALSE => 4, - :INTEGER => 5, - :SYMBOL => 6, - :STRING => 7, - :REGEXP => 8, - :ANY => 9, - :EVEN => 10, - :ODD => 11, - :METHOD_NAME => 12, - :CLASS_NAME => 13, - "|" => 14, - "<" => 15, - ">" => 16, - "," => 17, - "=" => 18, - "^=" => 19, - "$=" => 20, - "*=" => 21, - "*" => 22, - "+" => 23, - "^" => 24, - "[" => 25, - "]" => 26, - "?" => 27, - "{" => 28, - "}" => 29 } - -racc_nt_base = 30 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "NIL", - "TRUE", - "FALSE", - "INTEGER", - "SYMBOL", - "STRING", - "REGEXP", - "ANY", - "EVEN", - "ODD", - "METHOD_NAME", - "CLASS_NAME", - "\"|\"", - "\"<\"", - "\">\"", - "\",\"", - "\"=\"", - "\"^=\"", - "\"$=\"", - "\"*=\"", - "\"*\"", - "\"+\"", - "\"^\"", - "\"[\"", - "\"]\"", - "\"?\"", - "\"{\"", - "\"}\"", - "$start", - "expression", - "primary", - "node", - "array", - "literal", - "any", - "attrs", - "attr", - "method_name", - "items_opt", - "items", - "item", - "quantifier" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -# reduce 1 omitted - -module_eval(<<'.,.,', 'machete.y', 44) - def _reduce_2(val, _values, result) - result = if val[0].is_a?(ChoiceMatcher) - ChoiceMatcher.new(val[0].alternatives << val[2]) - else - ChoiceMatcher.new([val[0], val[2]]) - end - - result - end -.,., - -# reduce 3 omitted - -# reduce 4 omitted - -# reduce 5 omitted - -# reduce 6 omitted - -module_eval(<<'.,.,', 'machete.y', 57) - def _reduce_7(val, _values, result) - result = NodeMatcher.new(val[0].to_sym) - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 60) - def _reduce_8(val, _values, result) - result = NodeMatcher.new(val[0].to_sym, val[2]) - - result - end -.,., - -# reduce 9 omitted - -module_eval(<<'.,.,', 'machete.y', 64) - def _reduce_10(val, _values, result) - result = val[0].merge(val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 66) - def _reduce_11(val, _values, result) - result = { val[0].to_sym => val[2] } - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 68) - def _reduce_12(val, _values, result) - result = { - val[0].to_sym => SymbolRegexpMatcher.new( - Regexp.new("^" + Regexp.escape(symbol_value(val[2]).to_s)) - ) - } - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 75) - def _reduce_13(val, _values, result) - result = { - val[0].to_sym => SymbolRegexpMatcher.new( - Regexp.new(Regexp.escape(symbol_value(val[2]).to_s) + "$") - ) - } - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 82) - def _reduce_14(val, _values, result) - result = { - val[0].to_sym => SymbolRegexpMatcher.new( - Regexp.new(Regexp.escape(symbol_value(val[2]).to_s)) - ) - } - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 89) - def _reduce_15(val, _values, result) - result = { - val[0].to_sym => StringRegexpMatcher.new( - Regexp.new("^" + Regexp.escape(string_value(val[2]))) - ) - } - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 96) - def _reduce_16(val, _values, result) - result = { - val[0].to_sym => StringRegexpMatcher.new( - Regexp.new(Regexp.escape(string_value(val[2])) + "$") - ) - } - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 103) - def _reduce_17(val, _values, result) - result = { - val[0].to_sym => StringRegexpMatcher.new( - Regexp.new(Regexp.escape(string_value(val[2]))) - ) - } - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 110) - def _reduce_18(val, _values, result) - result = { - val[0].to_sym => IndifferentRegexpMatcher.new( - Regexp.new(regexp_value(val[2])) - ) - } - - result - end -.,., - -# reduce 19 omitted - -# reduce 20 omitted - -# reduce 21 omitted - -# reduce 22 omitted - -# reduce 23 omitted - -# reduce 24 omitted - -# reduce 25 omitted - -# reduce 26 omitted - -# reduce 27 omitted - -# reduce 28 omitted - -# reduce 29 omitted - -# reduce 30 omitted - -# reduce 31 omitted - -module_eval(<<'.,.,', 'machete.y', 134) - def _reduce_32(val, _values, result) - result = ArrayMatcher.new(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 136) - def _reduce_33(val, _values, result) - result = [] - result - end -.,., - -# reduce 34 omitted - -module_eval(<<'.,.,', 'machete.y', 139) - def _reduce_35(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 140) - def _reduce_36(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -# reduce 37 omitted - -module_eval(<<'.,.,', 'machete.y', 143) - def _reduce_38(val, _values, result) - result = Quantifier.new(val[0], *val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 145) - def _reduce_39(val, _values, result) - result = [0, nil, 1] - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 146) - def _reduce_40(val, _values, result) - result = [1, nil, 1] - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 147) - def _reduce_41(val, _values, result) - result = [0, 1, 1] - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 149) - def _reduce_42(val, _values, result) - result = [integer_value(val[1]), integer_value(val[1]), 1] - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 152) - def _reduce_43(val, _values, result) - result = [integer_value(val[1]), nil, 1] - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 155) - def _reduce_44(val, _values, result) - result = [0, integer_value(val[2]), 1] - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 158) - def _reduce_45(val, _values, result) - result = [integer_value(val[1]), integer_value(val[3]), 1] - - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 160) - def _reduce_46(val, _values, result) - result = [0, nil, 2] - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 161) - def _reduce_47(val, _values, result) - result = [1, nil, 2] - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 163) - def _reduce_48(val, _values, result) - result = LiteralMatcher.new(nil) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 164) - def _reduce_49(val, _values, result) - result = LiteralMatcher.new(true) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 165) - def _reduce_50(val, _values, result) - result = LiteralMatcher.new(false) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 166) - def _reduce_51(val, _values, result) - result = LiteralMatcher.new(integer_value(val[0])) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 167) - def _reduce_52(val, _values, result) - result = LiteralMatcher.new(symbol_value(val[0])) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 168) - def _reduce_53(val, _values, result) - result = LiteralMatcher.new(string_value(val[0])) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 169) - def _reduce_54(val, _values, result) - result = LiteralMatcher.new(regexp_value(val[0])) - result - end -.,., - -module_eval(<<'.,.,', 'machete.y', 171) - def _reduce_55(val, _values, result) - result = AnyMatcher.new - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module Machete diff --git a/test/racc/regress/mediacloth b/test/racc/regress/mediacloth deleted file mode 100644 index cca7d3c7e4..0000000000 --- a/test/racc/regress/mediacloth +++ /dev/null @@ -1,1463 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - -require 'mediacloth/mediawikiast' - -class MediaWikiParser < Racc::Parser - -module_eval(<<'...end mediacloth.y/module_eval...', 'mediacloth.y', 564) - -attr_accessor :lexer - -def initialize - @nodes = [] - @context = [] - @wiki_ast_length = 0 - super -end - -#Tokenizes input string and parses it. -def parse(input) - @yydebug=true - lexer.tokenize(input) - do_parse - return @nodes.last -end - -#Asks the lexer to return the next token. -def next_token - token = @lexer.lex - if token[0].to_s.upcase.include? "_START" - @context << token[2..3] - elsif token[0].to_s.upcase.include? "_END" - @ast_index = @context.last[0] - @ast_length = token[2] + token[3] - @context.last[0] - @context.pop - else - @ast_index = token[2] - @ast_length = token[3] - end - - @wiki_ast_length += token[3] - - return token[0..1] -end -...end mediacloth.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 22, 28, 50, 29, 61, 13, 63, 132, 15, 86, - 37, 87, 24, 33, 86, 34, 87, 35, 85, 23, - 26, 25, 27, 12, 86, 30, 87, 31, 86, 42, - 87, 32, 44, 86, 48, 87, 57, 17, 57, 22, - 28, 21, 29, 46, 13, 51, 67, 15, 68, 11, - 36, 24, 33, 14, 34, 69, 35, 36, 23, 26, - 25, 27, 12, 86, 30, 87, 31, 75, 73, 70, - 32, 48, 81, 71, 72, 76, 17, 77, 22, 28, - 21, 29, 82, 13, 45, 51, 15, -65, 11, 36, - 24, 33, 14, 34, -65, 35, 63, 23, 26, 25, - 27, 12, 96, 30, 63, 31, 106, 109, 110, 32, - 113, 114, 48, 117, 118, 17, 124, 22, 28, 21, - 29, 57, 13, 127, 128, 15, 131, 11, 36, 24, - 33, 14, 34, 136, 35, 137, 23, 26, 25, 27, - 12, 138, 30, 75, 31, 51, 141, -63, 32, 106, - 106, 150, 153, 51, 17, nil, nil, nil, 21, nil, - 22, 28, 53, 29, nil, 13, 11, 36, 15, nil, - 14, nil, 24, 33, nil, 34, nil, 35, nil, 23, - 26, 25, 27, 12, nil, 30, nil, 31, nil, nil, - nil, 32, nil, nil, nil, nil, nil, 17, nil, 22, - 28, 21, 29, 55, 13, nil, nil, 15, nil, 11, - 36, 24, 33, 14, 34, nil, 35, nil, 23, 26, - 25, 27, 12, nil, 30, nil, 31, nil, nil, nil, - 32, nil, nil, nil, nil, nil, 17, nil, 22, 28, - 21, 29, nil, 13, nil, nil, 15, nil, 11, 36, - 24, 33, 14, 34, nil, 35, nil, 23, 26, 25, - 27, 12, nil, 30, nil, 31, nil, nil, nil, 32, - nil, nil, nil, nil, nil, 17, nil, 22, 28, 21, - 29, nil, 13, nil, nil, 15, nil, 11, 36, 24, - 33, 14, 34, nil, 35, nil, 23, 26, 25, 27, - 12, nil, 30, nil, 31, nil, nil, nil, 32, nil, - nil, nil, nil, nil, 17, nil, 22, 28, 21, 29, - nil, 13, nil, nil, 15, nil, 11, 36, 24, 33, - 14, 34, nil, 35, nil, 23, 26, 25, 27, 12, - nil, 30, nil, 31, nil, nil, nil, 32, nil, nil, - nil, nil, nil, 17, nil, 22, 28, 21, 29, nil, - 13, nil, nil, 15, nil, 11, 36, 24, 33, 14, - 34, nil, 35, nil, 23, 26, 25, 27, 12, nil, - 30, nil, 31, nil, nil, nil, 32, nil, nil, nil, - nil, nil, 17, nil, 22, 28, 21, 29, nil, 13, - nil, nil, 15, nil, 11, 36, 24, 33, 14, 34, - nil, 35, nil, 23, 26, 25, 27, 12, nil, 30, - nil, 31, nil, nil, nil, 32, nil, nil, nil, nil, - nil, 17, 78, nil, nil, 21, nil, 22, 28, 88, - 29, nil, 13, 11, 36, 15, nil, 14, nil, 24, - 33, nil, 34, nil, 35, nil, 23, 26, 25, 27, - 12, nil, 30, nil, 31, nil, nil, nil, 32, nil, - nil, nil, nil, nil, 17, nil, 22, 28, 21, 29, - 89, 13, nil, nil, 15, nil, 11, 36, 24, 33, - 14, 34, nil, 35, nil, 23, 26, 25, 27, 12, - nil, 30, nil, 31, nil, nil, nil, 32, nil, nil, - nil, nil, nil, 17, nil, 22, 28, 21, 29, nil, - 13, nil, nil, 15, nil, 11, 36, 24, 33, 14, - 34, nil, 35, nil, 23, 26, 25, 27, 12, nil, - 30, nil, 31, nil, nil, 93, 32, nil, nil, nil, - nil, nil, 17, nil, 22, 28, 21, 29, nil, 13, - nil, nil, 15, nil, 11, 36, 24, 33, 14, 34, - nil, 35, nil, 23, 26, 25, 27, 12, nil, 30, - nil, 31, nil, nil, nil, 32, nil, nil, 98, nil, - nil, 17, nil, 22, 28, 21, 29, nil, 13, nil, - nil, 15, nil, 11, 36, 24, 33, 14, 34, nil, - 35, nil, 23, 26, 25, 27, 12, nil, 30, nil, - 31, nil, nil, nil, 32, nil, nil, nil, nil, 101, - 17, nil, nil, nil, 21, nil, 22, 28, nil, 29, - nil, 13, 11, 36, 15, nil, 14, nil, 24, 33, - 102, 34, nil, 35, nil, 23, 26, 25, 27, 12, - nil, 30, nil, 31, nil, nil, nil, 32, nil, nil, - nil, nil, nil, 17, nil, 22, 28, 21, 29, nil, - 13, nil, nil, 15, nil, 11, 36, 24, 33, 14, - 34, 103, 35, nil, 23, 26, 25, 27, 12, nil, - 30, nil, 31, nil, nil, nil, 32, nil, nil, nil, - nil, nil, 17, nil, 22, 28, 21, 29, nil, 13, - nil, nil, 15, nil, 11, 36, 24, 33, 14, 34, - nil, 35, 104, 23, 26, 25, 27, 12, nil, 30, - nil, 31, nil, nil, nil, 32, nil, nil, nil, nil, - nil, 17, nil, 22, 28, 21, 29, nil, 13, nil, - nil, 15, nil, 11, 36, 24, 33, 14, 34, nil, - 35, nil, 23, 26, 25, 27, 12, nil, 30, nil, - 31, nil, nil, nil, 32, nil, nil, nil, nil, nil, - 17, nil, 22, 28, 21, 29, nil, 13, nil, nil, - 15, nil, 11, 36, 24, 33, 14, 34, nil, 35, - nil, 23, 26, 25, 27, 12, nil, 30, nil, 31, - nil, nil, nil, 32, nil, nil, nil, nil, nil, 17, - nil, 22, 28, 21, 29, nil, 13, nil, nil, 15, - nil, 11, 36, 24, 33, 14, 34, nil, 35, nil, - 23, 26, 25, 27, 12, nil, 30, nil, 31, nil, - nil, nil, 32, nil, nil, nil, nil, nil, 17, 115, - 22, 28, 21, 29, nil, 13, nil, nil, 15, nil, - 11, 36, 24, 33, 14, 34, nil, 35, nil, 23, - 26, 25, 27, 12, nil, 30, nil, 31, nil, nil, - nil, 32, nil, nil, nil, nil, nil, 17, nil, 22, - 28, 21, 29, nil, 13, nil, 121, 15, nil, 11, - 36, 24, 33, 14, 34, nil, 35, nil, 23, 26, - 25, 27, 12, nil, 30, nil, 31, nil, nil, nil, - 32, nil, nil, nil, nil, nil, 17, nil, 22, 28, - 21, 29, nil, 13, nil, nil, 15, 123, 11, 36, - 24, 33, 14, 34, nil, 35, nil, 23, 26, 25, - 27, 12, nil, 30, nil, 31, nil, nil, 126, 32, - nil, nil, nil, nil, nil, 17, nil, 22, 28, 21, - 29, nil, 13, nil, nil, 15, nil, 11, 36, 24, - 33, 14, 34, nil, 35, nil, 23, 26, 25, 27, - 12, nil, 30, nil, 31, nil, nil, nil, 32, nil, - nil, 129, nil, nil, 17, nil, 22, 28, 21, 29, - nil, 13, nil, nil, 15, nil, 11, 36, 24, 33, - 14, 34, nil, 35, nil, 23, 26, 25, 27, 12, - nil, 30, nil, 31, nil, nil, nil, 32, nil, nil, - nil, nil, 130, 17, nil, 22, 28, 21, 29, nil, - 13, nil, 134, 15, nil, 11, 36, 24, 33, 14, - 34, nil, 35, nil, 23, 26, 25, 27, 12, nil, - 30, nil, 31, nil, nil, nil, 32, nil, nil, nil, - nil, nil, 17, nil, 22, 28, 21, 29, nil, 13, - nil, nil, 15, nil, 11, 36, 24, 33, 14, 34, - nil, 35, nil, 23, 26, 25, 27, 12, nil, 30, - nil, 31, nil, nil, nil, 32, nil, nil, nil, nil, - nil, 17, nil, 22, 28, 21, 29, nil, 13, nil, - nil, 15, nil, 11, 36, 24, 33, 14, 34, nil, - 35, nil, 23, 26, 25, 27, 12, nil, 30, nil, - 31, nil, nil, nil, 32, nil, nil, nil, nil, nil, - 17, nil, 22, 28, 21, 29, nil, 13, nil, 142, - 15, nil, 11, 36, 24, 33, 14, 34, nil, 35, - nil, 23, 26, 25, 27, 12, nil, 30, nil, 31, - nil, nil, nil, 32, nil, nil, nil, nil, nil, 17, - nil, 22, 28, 21, 29, nil, 13, nil, nil, 15, - 144, 11, 36, 24, 33, 14, 34, nil, 35, nil, - 23, 26, 25, 27, 12, nil, 30, nil, 31, nil, - nil, nil, 32, nil, nil, nil, nil, nil, 17, nil, - nil, nil, 21, nil, nil, nil, nil, nil, nil, nil, - 11, 36, 22, 28, 14, 29, nil, 13, nil, nil, - 15, nil, 136, nil, 24, 33, nil, 34, nil, 35, - nil, 23, 26, 25, 27, 12, nil, 30, nil, 31, - nil, nil, nil, 32, nil, nil, nil, nil, nil, 17, - nil, nil, nil, 21, nil, nil, nil, nil, nil, nil, - nil, 11, 36, 22, 28, 14, 29, nil, 13, nil, - nil, 15, nil, 136, nil, 24, 33, nil, 34, nil, - 35, nil, 23, 26, 25, 27, 12, nil, 30, nil, - 31, nil, nil, nil, 32, nil, nil, nil, nil, nil, - 17, nil, nil, nil, 21, nil, nil, nil, nil, nil, - nil, nil, 11, 36, nil, nil, 14 ] - -racc_action_check = [ - 0, 0, 21, 0, 32, 0, 32, 106, 0, 85, - 1, 85, 0, 0, 121, 0, 121, 0, 51, 0, - 0, 0, 0, 0, 123, 0, 123, 0, 142, 13, - 142, 0, 15, 144, 17, 144, 30, 0, 31, 2, - 2, 0, 2, 15, 2, 21, 36, 2, 37, 0, - 0, 2, 2, 0, 2, 39, 2, 106, 2, 2, - 2, 2, 2, 51, 2, 51, 2, 44, 44, 41, - 2, 48, 48, 42, 43, 45, 2, 46, 12, 12, - 2, 12, 49, 12, 15, 50, 12, 56, 2, 2, - 12, 12, 2, 12, 58, 12, 59, 12, 12, 12, - 12, 12, 60, 12, 62, 12, 67, 73, 74, 12, - 76, 77, 81, 83, 84, 12, 90, 14, 14, 12, - 14, 91, 14, 94, 95, 14, 105, 12, 12, 14, - 14, 12, 14, 109, 14, 112, 14, 14, 14, 14, - 14, 113, 14, 114, 14, 118, 119, 125, 14, 132, - 133, 135, 139, 141, 14, nil, nil, nil, 14, nil, - 28, 28, 28, 28, nil, 28, 14, 14, 28, nil, - 14, nil, 28, 28, nil, 28, nil, 28, nil, 28, - 28, 28, 28, 28, nil, 28, nil, 28, nil, nil, - nil, 28, nil, nil, nil, nil, nil, 28, nil, 29, - 29, 28, 29, 29, 29, nil, nil, 29, nil, 28, - 28, 29, 29, 28, 29, nil, 29, nil, 29, 29, - 29, 29, 29, nil, 29, nil, 29, nil, nil, nil, - 29, nil, nil, nil, nil, nil, 29, nil, 33, 33, - 29, 33, nil, 33, nil, nil, 33, nil, 29, 29, - 33, 33, 29, 33, nil, 33, nil, 33, 33, 33, - 33, 33, nil, 33, nil, 33, nil, nil, nil, 33, - nil, nil, nil, nil, nil, 33, nil, 34, 34, 33, - 34, nil, 34, nil, nil, 34, nil, 33, 33, 34, - 34, 33, 34, nil, 34, nil, 34, 34, 34, 34, - 34, nil, 34, nil, 34, nil, nil, nil, 34, nil, - nil, nil, nil, nil, 34, nil, 35, 35, 34, 35, - nil, 35, nil, nil, 35, nil, 34, 34, 35, 35, - 34, 35, nil, 35, nil, 35, 35, 35, 35, 35, - nil, 35, nil, 35, nil, nil, nil, 35, nil, nil, - nil, nil, nil, 35, nil, 40, 40, 35, 40, nil, - 40, nil, nil, 40, nil, 35, 35, 40, 40, 35, - 40, nil, 40, nil, 40, 40, 40, 40, 40, nil, - 40, nil, 40, nil, nil, nil, 40, nil, nil, nil, - nil, nil, 40, nil, 47, 47, 40, 47, nil, 47, - nil, nil, 47, nil, 40, 40, 47, 47, 40, 47, - nil, 47, nil, 47, 47, 47, 47, 47, nil, 47, - nil, 47, nil, nil, nil, 47, nil, nil, nil, nil, - nil, 47, 47, nil, nil, 47, nil, 52, 52, 52, - 52, nil, 52, 47, 47, 52, nil, 47, nil, 52, - 52, nil, 52, nil, 52, nil, 52, 52, 52, 52, - 52, nil, 52, nil, 52, nil, nil, nil, 52, nil, - nil, nil, nil, nil, 52, nil, 54, 54, 52, 54, - 54, 54, nil, nil, 54, nil, 52, 52, 54, 54, - 52, 54, nil, 54, nil, 54, 54, 54, 54, 54, - nil, 54, nil, 54, nil, nil, nil, 54, nil, nil, - nil, nil, nil, 54, nil, 57, 57, 54, 57, nil, - 57, nil, nil, 57, nil, 54, 54, 57, 57, 54, - 57, nil, 57, nil, 57, 57, 57, 57, 57, nil, - 57, nil, 57, nil, nil, 57, 57, nil, nil, nil, - nil, nil, 57, nil, 61, 61, 57, 61, nil, 61, - nil, nil, 61, nil, 57, 57, 61, 61, 57, 61, - nil, 61, nil, 61, 61, 61, 61, 61, nil, 61, - nil, 61, nil, nil, nil, 61, nil, nil, 61, nil, - nil, 61, nil, 63, 63, 61, 63, nil, 63, nil, - nil, 63, nil, 61, 61, 63, 63, 61, 63, nil, - 63, nil, 63, 63, 63, 63, 63, nil, 63, nil, - 63, nil, nil, nil, 63, nil, nil, nil, nil, 63, - 63, nil, nil, nil, 63, nil, 64, 64, nil, 64, - nil, 64, 63, 63, 64, nil, 63, nil, 64, 64, - 64, 64, nil, 64, nil, 64, 64, 64, 64, 64, - nil, 64, nil, 64, nil, nil, nil, 64, nil, nil, - nil, nil, nil, 64, nil, 65, 65, 64, 65, nil, - 65, nil, nil, 65, nil, 64, 64, 65, 65, 64, - 65, 65, 65, nil, 65, 65, 65, 65, 65, nil, - 65, nil, 65, nil, nil, nil, 65, nil, nil, nil, - nil, nil, 65, nil, 66, 66, 65, 66, nil, 66, - nil, nil, 66, nil, 65, 65, 66, 66, 65, 66, - nil, 66, 66, 66, 66, 66, 66, 66, nil, 66, - nil, 66, nil, nil, nil, 66, nil, nil, nil, nil, - nil, 66, nil, 71, 71, 66, 71, nil, 71, nil, - nil, 71, nil, 66, 66, 71, 71, 66, 71, nil, - 71, nil, 71, 71, 71, 71, 71, nil, 71, nil, - 71, nil, nil, nil, 71, nil, nil, nil, nil, nil, - 71, nil, 75, 75, 71, 75, nil, 75, nil, nil, - 75, nil, 71, 71, 75, 75, 71, 75, nil, 75, - nil, 75, 75, 75, 75, 75, nil, 75, nil, 75, - nil, nil, nil, 75, nil, nil, nil, nil, nil, 75, - nil, 79, 79, 75, 79, nil, 79, nil, nil, 79, - nil, 75, 75, 79, 79, 75, 79, nil, 79, nil, - 79, 79, 79, 79, 79, nil, 79, nil, 79, nil, - nil, nil, 79, nil, nil, nil, nil, nil, 79, 79, - 86, 86, 79, 86, nil, 86, nil, nil, 86, nil, - 79, 79, 86, 86, 79, 86, nil, 86, nil, 86, - 86, 86, 86, 86, nil, 86, nil, 86, nil, nil, - nil, 86, nil, nil, nil, nil, nil, 86, nil, 87, - 87, 86, 87, nil, 87, nil, 86, 87, nil, 86, - 86, 87, 87, 86, 87, nil, 87, nil, 87, 87, - 87, 87, 87, nil, 87, nil, 87, nil, nil, nil, - 87, nil, nil, nil, nil, nil, 87, nil, 92, 92, - 87, 92, nil, 92, nil, nil, 92, 87, 87, 87, - 92, 92, 87, 92, nil, 92, nil, 92, 92, 92, - 92, 92, nil, 92, nil, 92, nil, nil, 92, 92, - nil, nil, nil, nil, nil, 92, nil, 97, 97, 92, - 97, nil, 97, nil, nil, 97, nil, 92, 92, 97, - 97, 92, 97, nil, 97, nil, 97, 97, 97, 97, - 97, nil, 97, nil, 97, nil, nil, nil, 97, nil, - nil, 97, nil, nil, 97, nil, 100, 100, 97, 100, - nil, 100, nil, nil, 100, nil, 97, 97, 100, 100, - 97, 100, nil, 100, nil, 100, 100, 100, 100, 100, - nil, 100, nil, 100, nil, nil, nil, 100, nil, nil, - nil, nil, 100, 100, nil, 108, 108, 100, 108, nil, - 108, nil, 108, 108, nil, 100, 100, 108, 108, 100, - 108, nil, 108, nil, 108, 108, 108, 108, 108, nil, - 108, nil, 108, nil, nil, nil, 108, nil, nil, nil, - nil, nil, 108, nil, 111, 111, 108, 111, nil, 111, - nil, nil, 111, nil, 108, 108, 111, 111, 108, 111, - nil, 111, nil, 111, 111, 111, 111, 111, nil, 111, - nil, 111, nil, nil, nil, 111, nil, nil, nil, nil, - nil, 111, nil, 120, 120, 111, 120, nil, 120, nil, - nil, 120, nil, 111, 111, 120, 120, 111, 120, nil, - 120, nil, 120, 120, 120, 120, 120, nil, 120, nil, - 120, nil, nil, nil, 120, nil, nil, nil, nil, nil, - 120, nil, 122, 122, 120, 122, nil, 122, nil, 120, - 122, nil, 120, 120, 122, 122, 120, 122, nil, 122, - nil, 122, 122, 122, 122, 122, nil, 122, nil, 122, - nil, nil, nil, 122, nil, nil, nil, nil, nil, 122, - nil, 134, 134, 122, 134, nil, 134, nil, nil, 134, - 122, 122, 122, 134, 134, 122, 134, nil, 134, nil, - 134, 134, 134, 134, 134, nil, 134, nil, 134, nil, - nil, nil, 134, nil, nil, nil, nil, nil, 134, nil, - nil, nil, 134, nil, nil, nil, nil, nil, nil, nil, - 134, 134, 136, 136, 134, 136, nil, 136, nil, nil, - 136, nil, 136, nil, 136, 136, nil, 136, nil, 136, - nil, 136, 136, 136, 136, 136, nil, 136, nil, 136, - nil, nil, nil, 136, nil, nil, nil, nil, nil, 136, - nil, nil, nil, 136, nil, nil, nil, nil, nil, nil, - nil, 136, 136, 152, 152, 136, 152, nil, 152, nil, - nil, 152, nil, 152, nil, 152, 152, nil, 152, nil, - 152, nil, 152, 152, 152, 152, 152, nil, 152, nil, - 152, nil, nil, nil, 152, nil, nil, nil, nil, nil, - 152, nil, nil, nil, 152, nil, nil, nil, nil, nil, - nil, nil, 152, 152, nil, nil, 152 ] - -racc_action_pointer = [ - -2, 10, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 76, 27, 115, 30, nil, -7, nil, nil, - nil, 0, nil, nil, nil, nil, nil, nil, 158, 197, - 5, 7, -31, 236, 275, 314, 44, 48, nil, 29, - 353, 61, 64, 18, 55, 73, 23, 392, 30, 38, - 40, 16, 435, nil, 474, nil, 59, 513, 64, 59, - 68, 552, 67, 591, 634, 673, 712, 94, nil, nil, - nil, 751, nil, 105, 97, 790, 98, 109, nil, 829, - nil, 71, nil, 69, 68, -38, 868, 907, nil, nil, - 88, 90, 946, nil, 93, 90, nil, 985, nil, nil, - 1024, nil, nil, nil, nil, 73, 5, nil, 1063, 121, - nil, 1102, 124, 139, 131, nil, nil, nil, 100, 100, - 1141, -33, 1180, -23, nil, 116, nil, nil, nil, nil, - nil, nil, 137, 138, 1219, 140, 1270, nil, nil, 141, - nil, 108, -19, nil, -14, nil, nil, nil, nil, nil, - nil, nil, 1321, nil, nil, nil, nil, nil ] - -racc_action_default = [ - -83, -83, -1, -2, -3, -4, -5, -6, -7, -8, - -9, -10, -19, -83, -19, -83, -18, -23, -37, -39, - -40, -43, -51, -52, -53, -54, -55, -56, -83, -83, - -83, -83, -73, -83, -83, -83, -83, -83, -38, -83, - -20, -83, -26, -83, -30, -83, -83, -83, -23, -83, - -43, -46, -83, -57, -83, -58, -63, -83, -63, -73, - -83, -83, -73, -83, -83, -83, -83, -80, 158, -11, - -12, -83, -13, -83, -83, -83, -32, -83, -21, -83, - -24, -23, -41, -83, -83, -46, -83, -83, -59, -60, - -83, -83, -83, -66, -83, -83, -69, -83, -70, -72, - -83, -74, -76, -77, -78, -83, -83, -27, -28, -34, - -15, -31, -83, -83, -30, -22, -25, -42, -43, -83, - -83, -46, -83, -46, -61, -65, -67, -62, -68, -71, - -75, -79, -80, -80, -83, -83, -34, -16, -33, -83, - -44, -43, -46, -47, -46, -49, -64, -81, -82, -29, - -14, -35, -34, -17, -45, -48, -50, -36 ] - -racc_goto_table = [ - 38, 84, 74, 105, 49, 39, 90, 43, 94, 60, - 135, 1, 133, 2, 47, 41, 107, 112, 59, 56, - 58, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 83, nil, 119, 95, 151, 38, 99, - nil, 52, 54, nil, nil, 80, 64, 65, 66, nil, - 38, nil, 38, 157, nil, nil, nil, nil, nil, nil, - 79, nil, 38, 38, 38, nil, nil, nil, 147, 148, - 92, 143, 139, 145, 97, 146, 100, 38, 116, 149, - 125, nil, nil, nil, 108, nil, nil, nil, 111, nil, - 38, nil, 155, nil, 156, 38, nil, nil, 38, 120, - 122, 140, nil, nil, nil, nil, 38, nil, nil, 38, - nil, nil, nil, nil, nil, nil, nil, nil, 38, nil, - 38, nil, nil, nil, 154, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 108, nil, 152, - 38 ] - -racc_goto_check = [ - 3, 23, 15, 30, 22, 12, 25, 12, 25, 28, - 14, 1, 11, 2, 18, 13, 19, 16, 27, 24, - 24, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 22, nil, 23, 28, 14, 3, 28, - nil, 2, 2, nil, nil, 18, 2, 2, 2, nil, - 3, nil, 3, 14, nil, nil, nil, nil, nil, nil, - 2, nil, 3, 3, 3, nil, nil, nil, 30, 30, - 2, 23, 15, 23, 2, 25, 2, 3, 18, 19, - 24, nil, nil, nil, 2, nil, nil, nil, 2, nil, - 3, nil, 23, nil, 23, 3, nil, nil, 3, 2, - 2, 22, nil, nil, nil, nil, 3, nil, nil, 3, - nil, nil, nil, nil, nil, nil, nil, nil, 3, nil, - 3, nil, nil, nil, 22, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 2, nil, 2, - 3 ] - -racc_goto_pointer = [ - nil, 11, 13, -2, nil, nil, nil, nil, nil, nil, - nil, -94, -7, 2, -99, -42, -59, nil, -3, -55, - nil, nil, -17, -50, -11, -50, nil, -14, -23, nil, - -64 ] - -racc_goto_default = [ - nil, nil, 40, 18, 3, 4, 5, 6, 7, 8, - 9, 10, nil, nil, nil, nil, nil, 16, nil, nil, - 19, 20, nil, nil, nil, nil, 91, nil, nil, 62, - nil ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 58, :_reduce_1, - 1, 60, :_reduce_2, - 1, 60, :_reduce_3, - 1, 60, :_reduce_4, - 1, 60, :_reduce_5, - 1, 60, :_reduce_6, - 1, 60, :_reduce_7, - 1, 60, :_reduce_8, - 1, 60, :_reduce_9, - 1, 60, :_reduce_10, - 3, 60, :_reduce_11, - 3, 60, :_reduce_12, - 3, 60, :_reduce_13, - 6, 60, :_reduce_14, - 4, 60, :_reduce_15, - 5, 60, :_reduce_16, - 6, 60, :_reduce_17, - 1, 60, :_reduce_none, - 0, 69, :_reduce_19, - 1, 69, :_reduce_20, - 3, 67, :_reduce_21, - 4, 67, :_reduce_22, - 0, 75, :_reduce_23, - 2, 75, :_reduce_24, - 3, 75, :_reduce_25, - 1, 70, :_reduce_26, - 3, 70, :_reduce_27, - 1, 76, :_reduce_28, - 3, 76, :_reduce_29, - 0, 72, :_reduce_30, - 2, 72, :_reduce_31, - 0, 73, :_reduce_32, - 2, 73, :_reduce_33, - 0, 71, :_reduce_34, - 2, 71, :_reduce_35, - 3, 71, :_reduce_36, - 1, 59, :_reduce_37, - 2, 59, :_reduce_38, - 1, 61, :_reduce_39, - 1, 61, :_reduce_40, - 3, 74, :_reduce_41, - 4, 74, :_reduce_42, - 0, 79, :_reduce_43, - 4, 79, :_reduce_44, - 5, 79, :_reduce_45, - 0, 80, :_reduce_46, - 3, 80, :_reduce_47, - 4, 80, :_reduce_48, - 3, 80, :_reduce_49, - 4, 80, :_reduce_50, - 1, 77, :_reduce_51, - 1, 77, :_reduce_52, - 1, 77, :_reduce_53, - 1, 77, :_reduce_54, - 1, 77, :_reduce_55, - 1, 77, :_reduce_56, - 2, 78, :_reduce_57, - 2, 78, :_reduce_58, - 3, 78, :_reduce_59, - 3, 78, :_reduce_60, - 4, 62, :_reduce_61, - 4, 63, :_reduce_62, - 0, 83, :_reduce_63, - 3, 82, :_reduce_64, - 0, 82, :_reduce_65, - 2, 81, :_reduce_66, - 3, 81, :_reduce_67, - 4, 64, :_reduce_68, - 3, 64, :_reduce_69, - 2, 84, :_reduce_70, - 3, 84, :_reduce_71, - 2, 85, :_reduce_72, - 0, 85, :_reduce_73, - 2, 86, :_reduce_74, - 3, 86, :_reduce_75, - 3, 65, :_reduce_76, - 3, 65, :_reduce_77, - 3, 66, :_reduce_78, - 4, 68, :_reduce_79, - 0, 87, :_reduce_80, - 3, 87, :_reduce_81, - 3, 87, :_reduce_82 ] - -racc_reduce_n = 83 - -racc_shift_n = 158 - -racc_token_table = { - false => 0, - :error => 1, - :TEXT => 2, - :BOLD_START => 3, - :BOLD_END => 4, - :ITALIC_START => 5, - :ITALIC_END => 6, - :LINK_START => 7, - :LINK_END => 8, - :LINKSEP => 9, - :INTLINK_START => 10, - :INTLINK_END => 11, - :INTLINKSEP => 12, - :RESOURCESEP => 13, - :CHAR_ENT => 14, - :PRE_START => 15, - :PRE_END => 16, - :PREINDENT_START => 17, - :PREINDENT_END => 18, - :SECTION_START => 19, - :SECTION_END => 20, - :HLINE => 21, - :SIGNATURE_NAME => 22, - :SIGNATURE_DATE => 23, - :SIGNATURE_FULL => 24, - :PARA_START => 25, - :PARA_END => 26, - :UL_START => 27, - :UL_END => 28, - :OL_START => 29, - :OL_END => 30, - :LI_START => 31, - :LI_END => 32, - :DL_START => 33, - :DL_END => 34, - :DT_START => 35, - :DT_END => 36, - :DD_START => 37, - :DD_END => 38, - :TAG_START => 39, - :TAG_END => 40, - :ATTR_NAME => 41, - :ATTR_VALUE => 42, - :TABLE_START => 43, - :TABLE_END => 44, - :ROW_START => 45, - :ROW_END => 46, - :HEAD_START => 47, - :HEAD_END => 48, - :CELL_START => 49, - :CELL_END => 50, - :KEYWORD => 51, - :TEMPLATE_START => 52, - :TEMPLATE_END => 53, - :CATEGORY => 54, - :PASTE_START => 55, - :PASTE_END => 56 } - -racc_nt_base = 57 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "TEXT", - "BOLD_START", - "BOLD_END", - "ITALIC_START", - "ITALIC_END", - "LINK_START", - "LINK_END", - "LINKSEP", - "INTLINK_START", - "INTLINK_END", - "INTLINKSEP", - "RESOURCESEP", - "CHAR_ENT", - "PRE_START", - "PRE_END", - "PREINDENT_START", - "PREINDENT_END", - "SECTION_START", - "SECTION_END", - "HLINE", - "SIGNATURE_NAME", - "SIGNATURE_DATE", - "SIGNATURE_FULL", - "PARA_START", - "PARA_END", - "UL_START", - "UL_END", - "OL_START", - "OL_END", - "LI_START", - "LI_END", - "DL_START", - "DL_END", - "DT_START", - "DT_END", - "DD_START", - "DD_END", - "TAG_START", - "TAG_END", - "ATTR_NAME", - "ATTR_VALUE", - "TABLE_START", - "TABLE_END", - "ROW_START", - "ROW_END", - "HEAD_START", - "HEAD_END", - "CELL_START", - "CELL_END", - "KEYWORD", - "TEMPLATE_START", - "TEMPLATE_END", - "CATEGORY", - "PASTE_START", - "PASTE_END", - "$start", - "wiki", - "repeated_contents", - "contents", - "text", - "bulleted_list", - "numbered_list", - "dictionary_list", - "preformatted", - "section", - "tag", - "template", - "para_contents", - "link_contents", - "reslink_repeated_contents", - "intlink_repeated_contents", - "cat_sort_contents", - "table", - "tag_attributes", - "link_repeated_contents", - "element", - "formatted_element", - "table_contents", - "row_contents", - "list_item", - "list_contents", - "@1", - "dictionary_term", - "dictionary_contents", - "dictionary_definition", - "template_parameters" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'mediacloth.y', 47) - def _reduce_1(val, _values, result) - @nodes.push WikiAST.new(0, @wiki_ast_length) - #@nodes.last.children.insert(0, val[0]) - #puts val[0] - @nodes.last.children += val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 57) - def _reduce_2(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 61) - def _reduce_3(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 65) - def _reduce_4(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 69) - def _reduce_5(val, _values, result) - list = ListAST.new(@ast_index, @ast_length) - list.list_type = :Dictionary - list.children = val[0] - result = list - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 76) - def _reduce_6(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 80) - def _reduce_7(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 84) - def _reduce_8(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 88) - def _reduce_9(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 92) - def _reduce_10(val, _values, result) - k = KeywordAST.new(@ast_index, @ast_length) - k.text = val[0] - result = k - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 98) - def _reduce_11(val, _values, result) - p = ParagraphAST.new(@ast_index, @ast_length) - p.children = val[1] - result = p - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 104) - def _reduce_12(val, _values, result) - l = LinkAST.new(@ast_index, @ast_length) - l.link_type = val[0] - l.url = val[1][0] - l.children += val[1][1..-1] if val[1].length > 1 - result = l - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 112) - def _reduce_13(val, _values, result) - p = PasteAST.new(@ast_index, @ast_length) - p.children = val[1] - result = p - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 118) - def _reduce_14(val, _values, result) - l = ResourceLinkAST.new(@ast_index, @ast_length) - l.prefix = val[1] - l.locator = val[3] - l.children = val[4] unless val[4].nil? or val[4].empty? - result = l - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 126) - def _reduce_15(val, _values, result) - l = InternalLinkAST.new(@ast_index, @ast_length) - l.locator = val[1] - l.children = val[2] unless val[2].nil? or val[2].empty? - result = l - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 133) - def _reduce_16(val, _values, result) - l = CategoryAST.new(@ast_index, @ast_length) - l.locator = val[2] - l.sort_as = val[3] - result = l - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 140) - def _reduce_17(val, _values, result) - l = CategoryLinkAST.new(@ast_index, @ast_length) - l.locator = val[3] - l.children = val[4] unless val[4].nil? or val[4].empty? - result = l - - result - end -.,., - -# reduce 18 omitted - -module_eval(<<'.,.,', 'mediacloth.y', 150) - def _reduce_19(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 154) - def _reduce_20(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 161) - def _reduce_21(val, _values, result) - if val[0] != val[2] - raise Racc::ParseError.new("XHTML end tag #{val[2]} does not match start tag #{val[0]}") - end - elem = ElementAST.new(@ast_index, @ast_length) - elem.name = val[0] - elem.attributes = val[1] - result = elem - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 171) - def _reduce_22(val, _values, result) - if val[0] != val[3] - raise Racc::ParseError.new("XHTML end tag #{val[3]} does not match start tag #{val[0]}") - end - elem = ElementAST.new(@ast_index, @ast_length) - elem.name = val[0] - elem.attributes = val[1] - elem.children += val[2] - result = elem - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 184) - def _reduce_23(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 188) - def _reduce_24(val, _values, result) - attr_map = val[2] ? val[2] : {} - attr_map[val[0]] = true - result = attr_map - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 194) - def _reduce_25(val, _values, result) - attr_map = val[2] ? val[2] : {} - attr_map[val[0]] = val[1] - result = attr_map - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 204) - def _reduce_26(val, _values, result) - result = val - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 208) - def _reduce_27(val, _values, result) - result = [val[0]] - result += val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 217) - def _reduce_28(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 221) - def _reduce_29(val, _values, result) - result = val[0] - result += val[2] if val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 229) - def _reduce_30(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 233) - def _reduce_31(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 239) - def _reduce_32(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 243) - def _reduce_33(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 249) - def _reduce_34(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 253) - def _reduce_35(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 257) - def _reduce_36(val, _values, result) - i = InternalLinkItemAST.new(@ast_index, @ast_length) - i.children = val[1] - result = [i] - result += val[2] if val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 266) - def _reduce_37(val, _values, result) - result = [] - result << val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 271) - def _reduce_38(val, _values, result) - result = [] - result += val[0] - result << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 279) - def _reduce_39(val, _values, result) - p = TextAST.new(@ast_index, @ast_length) - p.formatting = val[0][0] - p.contents = val[0][1] - result = p - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 286) - def _reduce_40(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 293) - def _reduce_41(val, _values, result) - table = TableAST.new(@ast_index, @ast_length) - table.children = val[1] unless val[1].nil? or val[1].empty? - result = table - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 299) - def _reduce_42(val, _values, result) - table = TableAST.new(@ast_index, @ast_length) - table.options = val[1] - table.children = val[2] unless val[2].nil? or val[2].empty? - result = table - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 307) - def _reduce_43(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 311) - def _reduce_44(val, _values, result) - row = TableRowAST.new(@ast_index, @ast_length) - row.children = val[1] unless val[1].nil? or val[1].empty? - result = [row] - result += val[3] unless val[3].nil? or val[3].empty? - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 318) - def _reduce_45(val, _values, result) - row = TableRowAST.new(@ast_index, @ast_length) - row.children = val[2] unless val[2].nil? or val[2].empty? - row.options = val[1] - result = [row] - result += val[4] unless val[4].nil? or val[4].empty? - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 327) - def _reduce_46(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 331) - def _reduce_47(val, _values, result) - cell = TableCellAST.new(@ast_index, @ast_length) - cell.type = :head - result = [cell] - result += val[2] unless val[2].nil? or val[2].empty? - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 338) - def _reduce_48(val, _values, result) - cell = TableCellAST.new(@ast_index, @ast_length) - cell.children = val[1] unless val[1].nil? or val[1].empty? - cell.type = :head - result = [cell] - result += val[3] unless val[3].nil? or val[3].empty? - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 346) - def _reduce_49(val, _values, result) - cell = TableCellAST.new(@ast_index, @ast_length) - cell.type = :body - result = [cell] - result += val[2] unless val[2].nil? or val[2].empty? - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 353) - def _reduce_50(val, _values, result) - if val[2] == 'attributes' - result = [] - else - cell = TableCellAST.new(@ast_index, @ast_length) - cell.children = val[1] unless val[1].nil? or val[1].empty? - cell.type = :body - result = [cell] - end - result += val[3] unless val[3].nil? or val[3].empty? - if val[2] == 'attributes' and val[3] and val[3].first.class == TableCellAST - val[3].first.attributes = val[1] - end - result - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 371) - def _reduce_51(val, _values, result) - return [:None, val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 373) - def _reduce_52(val, _values, result) - return [:HLine, val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 375) - def _reduce_53(val, _values, result) - return [:CharacterEntity, val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 377) - def _reduce_54(val, _values, result) - return [:SignatureDate, val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 379) - def _reduce_55(val, _values, result) - return [:SignatureName, val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 381) - def _reduce_56(val, _values, result) - return [:SignatureFull, val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 387) - def _reduce_57(val, _values, result) - result = FormattedAST.new(@ast_index, @ast_length) - result.formatting = :Bold - result - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 393) - def _reduce_58(val, _values, result) - result = FormattedAST.new(@ast_index, @ast_length) - result.formatting = :Italic - result - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 399) - def _reduce_59(val, _values, result) - p = FormattedAST.new(@ast_index, @ast_length) - p.formatting = :Bold - p.children += val[1] - result = p - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 406) - def _reduce_60(val, _values, result) - p = FormattedAST.new(@ast_index, @ast_length) - p.formatting = :Italic - p.children += val[1] - result = p - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 415) - def _reduce_61(val, _values, result) - list = ListAST.new(@ast_index, @ast_length) - list.list_type = :Bulleted - list.children << val[1] - list.children += val[2] - result = list - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 425) - def _reduce_62(val, _values, result) - list = ListAST.new(@ast_index, @ast_length) - list.list_type = :Numbered - list.children << val[1] - list.children += val[2] - result = list - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 434) - def _reduce_63(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 437) - def _reduce_64(val, _values, result) - result << val[1] - result += val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 441) - def _reduce_65(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 447) - def _reduce_66(val, _values, result) - result = ListItemAST.new(@ast_index, @ast_length) - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 451) - def _reduce_67(val, _values, result) - li = ListItemAST.new(@ast_index, @ast_length) - li.children += val[1] - result = li - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 460) - def _reduce_68(val, _values, result) - result = [val[1]] - result += val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 465) - def _reduce_69(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 472) - def _reduce_70(val, _values, result) - result = ListTermAST.new(@ast_index, @ast_length) - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 476) - def _reduce_71(val, _values, result) - term = ListTermAST.new(@ast_index, @ast_length) - term.children += val[1] - result = term - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 484) - def _reduce_72(val, _values, result) - result = [val[0]] - result += val[1] if val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 489) - def _reduce_73(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 495) - def _reduce_74(val, _values, result) - result = ListDefinitionAST.new(@ast_index, @ast_length) - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 499) - def _reduce_75(val, _values, result) - term = ListDefinitionAST.new(@ast_index, @ast_length) - term.children += val[1] - result = term - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 506) - def _reduce_76(val, _values, result) - p = PreformattedAST.new(@ast_index, @ast_length) - p.children += val[1] - result = p - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 512) - def _reduce_77(val, _values, result) - p = PreformattedAST.new(@ast_index, @ast_length) - p.indented = true - p.children += val[1] - result = p - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 520) - def _reduce_78(val, _values, result) - result = [val[1], val[0].length] - s = SectionAST.new(@ast_index, @ast_length) - s.children = val[1] - s.level = val[0].length - result = s - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 530) - def _reduce_79(val, _values, result) - t = TemplateAST.new(@ast_index, @ast_length) - t.template_name = val[1] - t.children = val[2] unless val[2].nil? or val[2].empty? - result = t - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 539) - def _reduce_80(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 543) - def _reduce_81(val, _values, result) - p = TemplateParameterAST.new(@ast_index, @ast_length) - p.parameter_value = val[1] - result = [p] - result += val[2] if val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'mediacloth.y', 550) - def _reduce_82(val, _values, result) - p = TemplateParameterAST.new(@ast_index, @ast_length) - p.children << val[1] - result = [p] - result += val[2] if val[2] - - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - -end # class MediaWikiParser diff --git a/test/racc/regress/mof b/test/racc/regress/mof deleted file mode 100644 index d702292e51..0000000000 --- a/test/racc/regress/mof +++ /dev/null @@ -1,1368 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - - -# parser.rb - generated by racc - -require 'strscan' -require 'rubygems' -require 'cim' -require File.join(__dir__, 'result') -require File.join(__dir__, 'scanner') -require File.join(__dir__, 'case') - -module MOF - class Parser < Racc::Parser - -module_eval(<<'...end mof.y/module_eval...', 'mof.y', 571) - -# -# Initialize MOF::Parser -# MOF::Parser.new options = {} -# -# options -> Hash of options -# :debug -> boolean -# :includes -> array of include dirs -# :style -> :cim or :wmi -# -def initialize options = {} - @yydebug = options[:debug] - @includes = options[:includes] || [] - @quiet = options[:quiet] - @style = options[:style] || :cim # default to style CIM v2.2 syntax - - @lineno = 1 - @file = nil - @iconv = nil - @eol = "\n" - @fname = nil - @fstack = [] - @in_comment = false - @seen_files = [] - @qualifiers = {} -end - -# -# Make options hash from argv -# -# returns [ files, options ] -# - - def self.argv_handler name, argv - files = [] - options = { :namespace => "" } - while argv.size > 0 - case opt = argv.shift - when "-h" - $stderr.puts "Ruby MOF compiler" - $stderr.puts "#{name} [-h] [-d] [-I <dir>] [<moffiles>]" - $stderr.puts "Compiles <moffile>" - $stderr.puts "\t-d debug" - $stderr.puts "\t-h this help" - $stderr.puts "\t-I <dir> include dir" - $stderr.puts "\t-f force" - $stderr.puts "\t-n <namespace>" - $stderr.puts "\t-o <output>" - $stderr.puts "\t-s <style> syntax style (wmi,cim)" - $stderr.puts "\t-q quiet" - $stderr.puts "\t<moffiles> file(s) to read (else use $stdin)" - exit 0 - when "-f" then options[:force] = true - when "-s" then options[:style] = argv.shift.to_sym - when "-d" then options[:debug] = true - when "-q" then options[:quiet] = true - when "-I" - options[:includes] ||= [] - dirname = argv.shift - unless File.directory?(dirname) - files << dirname - dirname = File.dirname(dirname) - end - options[:includes] << Pathname.new(dirname) - when "-n" then options[:namespace] = argv.shift - when "-o" then options[:output] = argv.shift - when /^-.+/ - $stderr.puts "Undefined option #{opt}" - else - files << opt - end - end - [ files, options ] - end - -include Helper -include Scanner - -...end mof.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 13, 172, 163, 197, 174, 27, 63, 17, 145, 146, - 147, 62, 28, 172, 11, 173, 174, 173, 148, 11, - 144, 149, 150, 151, 152, 18, 163, 173, 33, 153, - 106, 107, 108, 109, 110, 112, 111, 40, 15, 16, - 42, 55, 57, 68, 69, 71, 72, 52, 53, 54, - 56, 163, 7, 199, 35, 42, 174, 7, 10, 10, - 115, 102, 114, 36, 10, 55, 57, 68, 69, 71, - 72, 52, 53, 54, 56, 51, 190, 44, -77, 42, - 33, 189, 10, 10, 33, 102, 51, 164, 60, 10, - 55, 57, 68, 69, 71, 72, 52, 53, 54, 56, - 170, 35, 10, 21, 42, 22, 23, 10, 29, 31, - 102, 35, 95, 96, 55, 57, 25, 65, 24, 78, - 52, 53, 54, 56, 97, 55, 57, 35, 180, 181, - 100, 52, 53, 54, 56, 93, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - -25, 93, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 191, 192, 102, 60, - 55, 57, 68, 69, 71, 72, 52, 53, 54, 56, - 145, 146, 147, 172, 113, 97, 174, 10, 18, 118, - 148, 119, 144, 149, 150, 151, 152, 173, 121, 124, - 35, 153, 55, 57, 68, 69, 71, 72, 52, 53, - 54, 56, 106, 107, 108, 109, 110, 112, 111, 10, - 55, 57, 68, 69, 71, 72, 52, 53, 54, 56, - 21, 126, 22, 23, 127, 129, 21, 10, 22, 23, - 130, 131, 133, 25, 135, 24, 10, 141, 154, 25, - 35, 24, 93, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 106, 107, 108, - 109, 110, 112, 111, 184, 185, 194, 200, 121, 207, - -59, 121, 209, 211, 135, 135, 218, 220, 221, 226, - 228, 229, 231, 10, 121, 135 ] - -racc_action_check = [ - 1, 140, 135, 186, 140, 12, 37, 8, 131, 131, - 131, 37, 13, 194, 0, 140, 194, 186, 131, 1, - 131, 131, 131, 131, 131, 8, 189, 194, 16, 131, - 65, 65, 65, 65, 65, 65, 65, 20, 7, 7, - 20, 135, 135, 135, 135, 135, 135, 135, 135, 135, - 135, 211, 0, 187, 17, 135, 187, 1, 135, 0, - 75, 135, 75, 18, 1, 189, 189, 189, 189, 189, - 189, 189, 189, 189, 189, 33, 177, 26, 207, 189, - 29, 177, 189, 207, 30, 189, 96, 137, 34, 137, - 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, - 138, 36, 138, 10, 211, 10, 10, 211, 15, 15, - 211, 169, 47, 47, 33, 33, 10, 38, 10, 43, - 33, 33, 33, 33, 49, 96, 96, 216, 142, 142, - 58, 96, 96, 96, 96, 169, 169, 169, 169, 169, - 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, - 42, 216, 216, 216, 216, 216, 216, 216, 216, 216, - 216, 216, 216, 216, 216, 216, 178, 178, 60, 61, - 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 181, 181, 181, 218, 66, 70, 218, 42, 74, 77, - 181, 78, 181, 181, 181, 181, 181, 218, 94, 98, - 100, 181, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 141, 141, 141, 141, 141, 141, 141, 40, - 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, - 11, 102, 11, 11, 103, 116, 63, 115, 63, 63, - 118, 119, 121, 11, 122, 11, 127, 130, 132, 63, - 161, 63, 44, 44, 44, 44, 44, 44, 44, 44, - 44, 44, 44, 44, 44, 44, 44, 192, 192, 192, - 192, 192, 192, 192, 162, 164, 183, 188, 195, 196, - 197, 198, 201, 205, 206, 208, 210, 212, 213, 217, - 221, 222, 223, 229, 230, 233 ] - -racc_action_pointer = [ - -5, 0, nil, nil, nil, nil, nil, 32, -2, nil, - 95, 222, -58, 12, nil, 101, -30, 46, 32, nil, - -21, nil, nil, nil, nil, nil, 11, nil, nil, 22, - 26, nil, nil, 67, 60, nil, 93, -54, 51, nil, - 155, nil, 123, 59, 220, nil, nil, 53, nil, 76, - nil, nil, nil, nil, nil, nil, nil, nil, 64, nil, - 101, 141, nil, 228, nil, 18, 125, nil, nil, nil, - 137, nil, nil, nil, 161, 0, nil, 129, 171, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 134, nil, 78, nil, 138, nil, - 192, nil, 223, 173, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 173, 172, nil, 214, 183, - nil, 195, 176, nil, nil, nil, nil, 182, nil, nil, - 189, -1, 183, nil, nil, -6, nil, 25, 38, nil, - -7, 200, 69, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 242, 208, nil, 212, nil, nil, nil, nil, 103, - nil, nil, nil, nil, nil, nil, nil, 13, 107, nil, - nil, 171, nil, 207, nil, nil, -5, 45, 248, 18, - nil, nil, 255, nil, 5, 214, 221, 222, 217, nil, - nil, 219, nil, nil, nil, 215, 216, 19, 217, nil, - 226, 43, 224, 229, nil, nil, 119, 226, 175, nil, - nil, 227, 231, 284, nil, nil, nil, nil, nil, 229, - 230, nil, nil, 227, nil, nil ] - -racc_action_default = [ - -1, -25, -2, -4, -5, -6, -7, -161, -161, -26, - -161, -161, -161, -161, -3, -161, -12, -161, -161, -28, - -33, -133, -134, -135, -136, -137, -161, -155, 236, -12, - -12, -11, -10, -161, -44, -48, -161, -161, -31, -34, - -25, -36, -100, -161, -161, -8, -9, -161, -14, -16, - -17, -18, -110, -111, -112, -113, -114, -115, -46, -45, - -161, -44, -27, -161, -30, -161, -161, -103, -104, -105, - -106, -107, -108, -109, -161, -161, -101, -131, -161, -60, - -61, -62, -63, -64, -65, -66, -67, -68, -69, -70, - -71, -72, -73, -74, -86, -13, -161, -116, -161, -47, - -161, -49, -161, -161, -29, -32, -37, -38, -39, -40, - -41, -42, -43, -35, -99, -25, -161, -132, -161, -161, - -87, -91, -93, -15, -20, -51, -50, -25, -102, -130, - -161, -161, -161, -92, -94, -25, -138, -25, -25, -157, - -161, -161, -161, -140, -142, -143, -144, -145, -146, -147, - -148, -149, -150, -151, -90, -95, -96, -97, -98, -117, - -118, -161, -161, -122, -161, -21, -22, -23, -24, -161, - -156, -158, -55, -56, -58, -128, -129, -161, -161, -153, - -139, -161, -119, -161, -121, -19, -161, -161, -75, -25, - -160, -152, -161, -141, -161, -86, -161, -55, -86, -57, - -76, -161, -154, -123, -125, -161, -93, -25, -93, -159, - -124, -25, -161, -161, -78, -80, -161, -161, -161, -127, - -52, -161, -79, -161, -83, -84, -53, -126, -54, -25, - -86, -85, -81, -88, -82, -89 ] - -racc_goto_table = [ - 8, 8, 34, 94, 122, 105, 136, 155, 48, 66, - 49, 76, 50, 19, 143, 187, 58, 204, 215, 32, - 139, 61, 2, 14, 12, 12, 1, 30, 47, 98, - 137, 171, 45, 46, 165, 166, 167, 168, 37, 26, - 232, 227, 38, 103, 64, 39, 41, 99, 101, 195, - 198, 196, 213, 214, 222, 223, 230, 234, 235, 132, - 75, 201, 225, 182, 193, 203, 104, 210, 177, 43, - 77, 123, 116, 49, 117, 50, 142, 178, 138, nil, - nil, 179, nil, 219, 128, 125, nil, nil, nil, nil, - 212, nil, 217, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 206, nil, nil, 208, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 140, 186, nil, - nil, nil, 202, nil, nil, nil, nil, 169, 140, nil, - 233, nil, nil, nil, nil, nil, 183, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 224, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 216, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 216 ] - -racc_goto_check = [ - 13, 13, 14, 35, 37, 28, 38, 52, 10, 30, - 11, 30, 12, 23, 69, 39, 15, 61, 44, 7, - 72, 14, 2, 2, 55, 55, 1, 8, 9, 16, - 17, 72, 7, 7, 18, 19, 20, 21, 24, 25, - 44, 61, 26, 15, 27, 29, 31, 33, 34, 36, - 40, 41, 42, 43, 45, 46, 47, 48, 50, 51, - 54, 52, 39, 58, 69, 60, 23, 62, 63, 64, - 65, 10, 66, 11, 67, 12, 68, 70, 71, nil, - nil, 28, nil, 52, 30, 14, nil, nil, nil, nil, - 38, nil, 38, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 37, nil, nil, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 13, 35, nil, - nil, nil, 28, nil, nil, nil, nil, 13, 13, nil, - 37, nil, nil, nil, nil, nil, 14, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 35, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 13, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 13 ] - -racc_goto_pointer = [ - nil, 26, 22, nil, nil, nil, nil, 3, 12, -5, - -25, -23, -21, 0, -15, -18, -29, -94, -103, -102, - -101, -100, nil, 3, 19, 28, 22, 6, -60, 25, - -31, 26, nil, -11, -12, -41, -137, -90, -116, -154, - -137, -135, -155, -154, -189, -161, -161, -167, -176, nil, - -175, -62, -128, nil, 18, 24, nil, nil, -98, nil, - -129, -177, -137, -72, 43, 27, -5, -3, -55, -117, - -64, -49, -107 ] - -racc_goto_default = [ - nil, nil, nil, 3, 4, 5, 6, nil, nil, nil, - nil, 70, 67, 74, 188, nil, nil, nil, nil, nil, - nil, nil, 9, nil, nil, 20, nil, nil, nil, nil, - 156, 157, 59, nil, 160, nil, 175, nil, nil, nil, - 176, nil, nil, nil, nil, nil, nil, nil, nil, 120, - 134, nil, nil, 158, nil, 73, 159, 161, nil, 162, - nil, nil, nil, 205, nil, nil, nil, nil, nil, nil, - nil, nil, nil ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 0, 71, :_reduce_1, - 1, 71, :_reduce_2, - 2, 71, :_reduce_3, - 1, 72, :_reduce_none, - 1, 72, :_reduce_5, - 1, 72, :_reduce_6, - 1, 72, :_reduce_7, - 4, 73, :_reduce_8, - 4, 73, :_reduce_none, - 3, 73, :_reduce_10, - 1, 78, :_reduce_none, - 0, 77, :_reduce_12, - 3, 77, :_reduce_13, - 1, 79, :_reduce_none, - 3, 79, :_reduce_none, - 1, 80, :_reduce_none, - 1, 80, :_reduce_17, - 1, 80, :_reduce_none, - 9, 74, :_reduce_19, - 0, 87, :_reduce_20, - 2, 87, :_reduce_21, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 0, 83, :_reduce_none, - 1, 83, :_reduce_26, - 4, 92, :_reduce_27, - 0, 94, :_reduce_28, - 3, 94, :_reduce_29, - 3, 93, :_reduce_30, - 0, 97, :_reduce_none, - 2, 97, :_reduce_32, - 0, 96, :_reduce_none, - 1, 96, :_reduce_none, - 3, 99, :_reduce_35, - 1, 99, :_reduce_none, - 1, 98, :_reduce_none, - 1, 98, :_reduce_none, - 1, 98, :_reduce_none, - 1, 98, :_reduce_none, - 1, 98, :_reduce_none, - 1, 98, :_reduce_none, - 1, 98, :_reduce_43, - 0, 85, :_reduce_none, - 1, 85, :_reduce_none, - 0, 86, :_reduce_none, - 1, 86, :_reduce_none, - 1, 84, :_reduce_48, - 2, 102, :_reduce_49, - 2, 104, :_reduce_50, - 2, 103, :_reduce_51, - 6, 89, :_reduce_52, - 6, 91, :_reduce_53, - 7, 90, :_reduce_54, - 1, 106, :_reduce_none, - 1, 106, :_reduce_56, - 1, 110, :_reduce_none, - 1, 110, :_reduce_58, - 1, 111, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 1, 105, :_reduce_74, - 1, 109, :_reduce_75, - 2, 109, :_reduce_76, - 0, 112, :_reduce_none, - 1, 112, :_reduce_none, - 2, 113, :_reduce_79, - 0, 115, :_reduce_80, - 3, 115, :_reduce_81, - 5, 114, :_reduce_82, - 1, 116, :_reduce_none, - 1, 116, :_reduce_none, - 1, 117, :_reduce_none, - 0, 107, :_reduce_none, - 1, 107, :_reduce_none, - 0, 118, :_reduce_none, - 1, 118, :_reduce_89, - 3, 119, :_reduce_90, - 0, 121, :_reduce_91, - 1, 121, :_reduce_none, - 0, 108, :_reduce_none, - 1, 108, :_reduce_none, - 2, 120, :_reduce_95, - 1, 122, :_reduce_none, - 1, 122, :_reduce_none, - 1, 122, :_reduce_none, - 3, 101, :_reduce_99, - 0, 124, :_reduce_none, - 1, 124, :_reduce_101, - 3, 124, :_reduce_102, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_109, - 1, 82, :_reduce_none, - 1, 82, :_reduce_none, - 1, 82, :_reduce_none, - 1, 82, :_reduce_none, - 1, 82, :_reduce_none, - 1, 81, :_reduce_none, - 2, 81, :_reduce_116, - 1, 123, :_reduce_none, - 1, 123, :_reduce_none, - 2, 126, :_reduce_none, - 0, 127, :_reduce_none, - 2, 127, :_reduce_none, - 1, 129, :_reduce_none, - 3, 128, :_reduce_none, - 2, 130, :_reduce_none, - 0, 132, :_reduce_none, - 3, 132, :_reduce_none, - 3, 131, :_reduce_none, - 1, 133, :_reduce_none, - 1, 133, :_reduce_none, - 6, 75, :_reduce_130, - 0, 136, :_reduce_none, - 1, 136, :_reduce_none, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 4, 134, :_reduce_138, - 5, 135, :_reduce_139, - 1, 138, :_reduce_140, - 3, 138, :_reduce_141, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 1, 139, :_reduce_none, - 5, 137, :_reduce_152, - 1, 140, :_reduce_153, - 3, 140, :_reduce_154, - 2, 76, :_reduce_none, - 8, 125, :_reduce_none, - 1, 141, :_reduce_none, - 2, 141, :_reduce_none, - 5, 142, :_reduce_none, - 3, 142, :_reduce_160 ] - -racc_reduce_n = 161 - -racc_shift_n = 236 - -racc_token_table = { - false => 0, - :error => 1, - "*" => 2, - "/" => 3, - "+" => 4, - "-" => 5, - :PRAGMA => 6, - :INCLUDE => 7, - :IDENTIFIER => 8, - :CLASS => 9, - :ASSOCIATION => 10, - :INDICATION => 11, - :AMENDED => 12, - :ENABLEOVERRIDE => 13, - :DISABLEOVERRIDE => 14, - :RESTRICTED => 15, - :TOSUBCLASS => 16, - :TOINSTANCE => 17, - :TRANSLATABLE => 18, - :QUALIFIER => 19, - :SCOPE => 20, - :SCHEMA => 21, - :PROPERTY => 22, - :REFERENCE => 23, - :METHOD => 24, - :PARAMETER => 25, - :FLAVOR => 26, - :INSTANCE => 27, - :AS => 28, - :REF => 29, - :ANY => 30, - :OF => 31, - :DT_VOID => 32, - :DT_UINT8 => 33, - :DT_SINT8 => 34, - :DT_UINT16 => 35, - :DT_SINT16 => 36, - :DT_UINT32 => 37, - :DT_SINT32 => 38, - :DT_UINT64 => 39, - :DT_SINT64 => 40, - :DT_REAL32 => 41, - :DT_REAL64 => 42, - :DT_CHAR16 => 43, - :DT_STR => 44, - :DT_BOOLEAN => 45, - :DT_DATETIME => 46, - :positiveDecimalValue => 47, - :stringValue => 48, - :realValue => 49, - :charValue => 50, - :booleanValue => 51, - :nullValue => 52, - :binaryValue => 53, - :octalValue => 54, - :decimalValue => 55, - :hexValue => 56, - "#" => 57, - "(" => 58, - ")" => 59, - "," => 60, - "{" => 61, - "}" => 62, - ";" => 63, - "[" => 64, - "]" => 65, - ":" => 66, - "$" => 67, - "=" => 68, - "." => 69 } - -racc_nt_base = 70 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "\"*\"", - "\"/\"", - "\"+\"", - "\"-\"", - "PRAGMA", - "INCLUDE", - "IDENTIFIER", - "CLASS", - "ASSOCIATION", - "INDICATION", - "AMENDED", - "ENABLEOVERRIDE", - "DISABLEOVERRIDE", - "RESTRICTED", - "TOSUBCLASS", - "TOINSTANCE", - "TRANSLATABLE", - "QUALIFIER", - "SCOPE", - "SCHEMA", - "PROPERTY", - "REFERENCE", - "METHOD", - "PARAMETER", - "FLAVOR", - "INSTANCE", - "AS", - "REF", - "ANY", - "OF", - "DT_VOID", - "DT_UINT8", - "DT_SINT8", - "DT_UINT16", - "DT_SINT16", - "DT_UINT32", - "DT_SINT32", - "DT_UINT64", - "DT_SINT64", - "DT_REAL32", - "DT_REAL64", - "DT_CHAR16", - "DT_STR", - "DT_BOOLEAN", - "DT_DATETIME", - "positiveDecimalValue", - "stringValue", - "realValue", - "charValue", - "booleanValue", - "nullValue", - "binaryValue", - "octalValue", - "decimalValue", - "hexValue", - "\"#\"", - "\"(\"", - "\")\"", - "\",\"", - "\"{\"", - "\"}\"", - "\";\"", - "\"[\"", - "\"]\"", - "\":\"", - "\"$\"", - "\"=\"", - "\".\"", - "$start", - "mofSpecification", - "mofProduction", - "compilerDirective", - "classDeclaration", - "qualifierDeclaration", - "instanceDeclaration", - "pragmaParameters_opt", - "pragmaName", - "pragmaParameterValues", - "pragmaParameterValue", - "string", - "integerValue", - "qualifierList_opt", - "className", - "alias_opt", - "superClass_opt", - "classFeatures", - "classFeature", - "propertyDeclaration", - "methodDeclaration", - "referenceDeclaration", - "qualifierList", - "qualifier", - "qualifiers", - "qualifierName", - "qualifierParameter_opt", - "flavor_opt", - "flavor", - "qualifierParameter", - "constantValue", - "arrayInitializer", - "alias", - "superClass", - "aliasIdentifier", - "dataType", - "propertyName", - "array_opt", - "defaultValue_opt", - "objectRef", - "referenceName", - "methodName", - "parameterList_opt", - "parameterList", - "parameter", - "parameters", - "typespec", - "parameterName", - "parameterValue_opt", - "array", - "defaultValue", - "positiveDecimalValue_opt", - "initializer", - "referenceInitializer", - "constantValues", - "instance", - "objectHandle", - "namespace_opt", - "modelPath", - "namespaceHandle", - "keyValuePairList", - "keyValuePair", - "keyValuePairs", - "keyname", - "qualifierType", - "scope", - "defaultFlavor_opt", - "defaultFlavor", - "metaElements", - "metaElement", - "flavors", - "valueInitializers", - "valueInitializer" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'mof.y', 41) - def _reduce_1(val, _values, result) - result = Hash.new - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 43) - def _reduce_2(val, _values, result) - result = { @name => @result } - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 45) - def _reduce_3(val, _values, result) - result = val[0] - result[@name] = @result - - result - end -.,., - -# reduce 4 omitted - -module_eval(<<'.,.,', 'mof.y', 53) - def _reduce_5(val, _values, result) - #puts "Class '#{val[0].name}'" - @result.classes << val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 57) - def _reduce_6(val, _values, result) - @result.qualifiers << val[0] - @qualifiers[val[0].name.downcase] = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 61) - def _reduce_7(val, _values, result) - @result.instances << val[0] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 71) - def _reduce_8(val, _values, result) - raise MOF::Helper::Error.new(@name,@lineno,@line,"Missing filename after '#pragma include'") unless val[3] - open val[3], :pragma - - result - end -.,., - -# reduce 9 omitted - -module_eval(<<'.,.,', 'mof.y', 76) - def _reduce_10(val, _values, result) - raise StyleError.new(@name,@lineno,@line,"Use '#pragma include' instead of '#include'") unless @style == :wmi - raise MOF::Helper::Error.new(@name,@lineno,@line,"Missing filename after '#include'") unless val[2] - open val[2], :pragma - - result - end -.,., - -# reduce 11 omitted - -module_eval(<<'.,.,', 'mof.y', 88) - def _reduce_12(val, _values, result) - raise StyleError.new(@name,@lineno,@line,"#pragma parameter missing") unless @style == :wmi - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 90) - def _reduce_13(val, _values, result) - result = val[1] - result - end -.,., - -# reduce 14 omitted - -# reduce 15 omitted - -# reduce 16 omitted - -module_eval(<<'.,.,', 'mof.y', 101) - def _reduce_17(val, _values, result) - raise StyleError.new(@name,@lineno,@line,"#pragma parameter missing") unless @style == :wmi - result - end -.,., - -# reduce 18 omitted - -module_eval(<<'.,.,', 'mof.y', 112) - def _reduce_19(val, _values, result) - qualifiers = val[0] - features = val[6] - # FIXME: features must not include references - result = CIM::Class.new(val[2],qualifiers,val[3],val[4],features) - - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 121) - def _reduce_20(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 123) - def _reduce_21(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -# reduce 22 omitted - -# reduce 23 omitted - -# reduce 24 omitted - -# reduce 25 omitted - -module_eval(<<'.,.,', 'mof.y', 136) - def _reduce_26(val, _values, result) - result = CIM::QualifierSet.new val[0] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 141) - def _reduce_27(val, _values, result) - result = val[2] - result.unshift val[1] if val[1] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 147) - def _reduce_28(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 149) - def _reduce_29(val, _values, result) - result = val[0] - result << val[2] if val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 156) - def _reduce_30(val, _values, result) - # Get qualifier decl - qualifier = case val[0] - when CIM::Qualifier then val[0].definition - when CIM::QualifierDeclaration then val[0] - when String then @qualifiers[val[0].downcase] - else - nil - end - raise MOF::Helper::Error.new(@name,@lineno,@line,"'#{val[0]}' is not a valid qualifier") unless qualifier - value = val[1] - raise MOF::Helper::Error.new(@name,@lineno,@line,"#{value.inspect} does not match qualifier type '#{qualifier.type}'") unless qualifier.type.matches?(value)||@style == :wmi - # Don't propagate a boolean 'false' - if qualifier.type == :boolean && value == false - result = nil - else - result = CIM::Qualifier.new(qualifier,value,val[2]) - end - - result - end -.,., - -# reduce 31 omitted - -module_eval(<<'.,.,', 'mof.y', 179) - def _reduce_32(val, _values, result) - result = CIM::QualifierFlavors.new val[1] - result - end -.,., - -# reduce 33 omitted - -# reduce 34 omitted - -module_eval(<<'.,.,', 'mof.y', 189) - def _reduce_35(val, _values, result) - result = val[1] - result - end -.,., - -# reduce 36 omitted - -# reduce 37 omitted - -# reduce 38 omitted - -# reduce 39 omitted - -# reduce 40 omitted - -# reduce 41 omitted - -# reduce 42 omitted - -module_eval(<<'.,.,', 'mof.y', 196) - def _reduce_43(val, _values, result) - case val[0].to_sym - when :amended, :toinstance - raise StyleError.new(@name,@lineno,@line,"'#{val[0]}' is not a valid flavor") unless @style == :wmi - end - - result - end -.,., - -# reduce 44 omitted - -# reduce 45 omitted - -# reduce 46 omitted - -# reduce 47 omitted - -module_eval(<<'.,.,', 'mof.y', 215) - def _reduce_48(val, _values, result) - raise ParseError.new("Class name must be prefixed by '<schema>_'") unless val[0].include?("_") || @style == :wmi - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 220) - def _reduce_49(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 225) - def _reduce_50(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 230) - def _reduce_51(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 236) - def _reduce_52(val, _values, result) - if val[3] - type = CIM::Array.new val[3],val[1] - else - type = val[1] - end - result = CIM::Property.new(type,val[2],val[0],val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 247) - def _reduce_53(val, _values, result) - if val[4] - raise StyleError.new(@name,@lineno,@line,"Array not allowed in reference declaration") unless @style == :wmi - end - result = CIM::Reference.new(val[1],val[2],val[0],val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 255) - def _reduce_54(val, _values, result) - result = CIM::Method.new(val[1],val[2],val[0],val[4]) - result - end -.,., - -# reduce 55 omitted - -module_eval(<<'.,.,', 'mof.y', 261) - def _reduce_56(val, _values, result) - # tmplprov.mof has 'string Property;' - raise StyleError.new(@name,@lineno,@line,"Invalid keyword '#{val[0]}' used for property name") unless @style == :wmi - - result - end -.,., - -# reduce 57 omitted - -module_eval(<<'.,.,', 'mof.y', 269) - def _reduce_58(val, _values, result) - result = "Indication" - result - end -.,., - -# reduce 59 omitted - -# reduce 60 omitted - -# reduce 61 omitted - -# reduce 62 omitted - -# reduce 63 omitted - -# reduce 64 omitted - -# reduce 65 omitted - -# reduce 66 omitted - -# reduce 67 omitted - -# reduce 68 omitted - -# reduce 69 omitted - -# reduce 70 omitted - -# reduce 71 omitted - -# reduce 72 omitted - -# reduce 73 omitted - -module_eval(<<'.,.,', 'mof.y', 292) - def _reduce_74(val, _values, result) - raise StyleError.new(@name,@lineno,@line,"'void' is not a valid datatype") unless @style == :wmi - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 297) - def _reduce_75(val, _values, result) - # WMI uses class names as data types (without REF ?!) - raise StyleError.new(@name,@lineno,@line,"Expected 'ref' keyword after classname '#{val[0]}'") unless @style == :wmi - result = CIM::ReferenceType.new val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 303) - def _reduce_76(val, _values, result) - result = CIM::ReferenceType.new val[0] - result - end -.,., - -# reduce 77 omitted - -# reduce 78 omitted - -module_eval(<<'.,.,', 'mof.y', 313) - def _reduce_79(val, _values, result) - result = val[1].unshift val[0] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 318) - def _reduce_80(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 320) - def _reduce_81(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 325) - def _reduce_82(val, _values, result) - if val[3] - type = CIM::Array.new val[3], val[1] - else - type = val[1] - end - result = CIM::Property.new(type,val[2],val[0]) - - result - end -.,., - -# reduce 83 omitted - -# reduce 84 omitted - -# reduce 85 omitted - -# reduce 86 omitted - -# reduce 87 omitted - -# reduce 88 omitted - -module_eval(<<'.,.,', 'mof.y', 351) - def _reduce_89(val, _values, result) - raise "Default parameter value not allowed in syntax style '{@style}'" unless @style == :wmi - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 356) - def _reduce_90(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 361) - def _reduce_91(val, _values, result) - result = -1 - result - end -.,., - -# reduce 92 omitted - -# reduce 93 omitted - -# reduce 94 omitted - -module_eval(<<'.,.,', 'mof.y', 372) - def _reduce_95(val, _values, result) - result = val[1] - result - end -.,., - -# reduce 96 omitted - -# reduce 97 omitted - -# reduce 98 omitted - -module_eval(<<'.,.,', 'mof.y', 383) - def _reduce_99(val, _values, result) - result = val[1] - result - end -.,., - -# reduce 100 omitted - -module_eval(<<'.,.,', 'mof.y', 389) - def _reduce_101(val, _values, result) - result = [ val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 391) - def _reduce_102(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -# reduce 103 omitted - -# reduce 104 omitted - -# reduce 105 omitted - -# reduce 106 omitted - -# reduce 107 omitted - -# reduce 108 omitted - -module_eval(<<'.,.,', 'mof.y', 402) - def _reduce_109(val, _values, result) - raise "Instance as property value not allowed in syntax style '{@style}'" unless @style == :wmi - result - end -.,., - -# reduce 110 omitted - -# reduce 111 omitted - -# reduce 112 omitted - -# reduce 113 omitted - -# reduce 114 omitted - -# reduce 115 omitted - -module_eval(<<'.,.,', 'mof.y', 416) - def _reduce_116(val, _values, result) - result = val[0] + val[1] - result - end -.,., - -# reduce 117 omitted - -# reduce 118 omitted - -# reduce 119 omitted - -# reduce 120 omitted - -# reduce 121 omitted - -# reduce 122 omitted - -# reduce 123 omitted - -# reduce 124 omitted - -# reduce 125 omitted - -# reduce 126 omitted - -# reduce 127 omitted - -# reduce 128 omitted - -# reduce 129 omitted - -module_eval(<<'.,.,', 'mof.y', 471) - def _reduce_130(val, _values, result) - result = CIM::QualifierDeclaration.new( val[1], val[2][0], val[2][1], val[3], val[4]) - result - end -.,., - -# reduce 131 omitted - -# reduce 132 omitted - -# reduce 133 omitted - -# reduce 134 omitted - -# reduce 135 omitted - -# reduce 136 omitted - -# reduce 137 omitted - -module_eval(<<'.,.,', 'mof.y', 490) - def _reduce_138(val, _values, result) - type = val[2].nil? ? val[1] : CIM::Array.new(val[2],val[1]) - result = [ type, val[3] ] - - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 497) - def _reduce_139(val, _values, result) - result = CIM::QualifierScopes.new(val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 502) - def _reduce_140(val, _values, result) - result = [ val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 504) - def _reduce_141(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -# reduce 142 omitted - -# reduce 143 omitted - -# reduce 144 omitted - -# reduce 145 omitted - -# reduce 146 omitted - -# reduce 147 omitted - -# reduce 148 omitted - -# reduce 149 omitted - -# reduce 150 omitted - -# reduce 151 omitted - -module_eval(<<'.,.,', 'mof.y', 522) - def _reduce_152(val, _values, result) - result = CIM::QualifierFlavors.new val[3] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 527) - def _reduce_153(val, _values, result) - result = [ val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'mof.y', 529) - def _reduce_154(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -# reduce 155 omitted - -# reduce 156 omitted - -# reduce 157 omitted - -# reduce 158 omitted - -# reduce 159 omitted - -module_eval(<<'.,.,', 'mof.y', 553) - def _reduce_160(val, _values, result) - raise "Instance property '#{val[1]} must have a value" unless @style == :wmi - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module MOF - - diff --git a/test/racc/regress/namae b/test/racc/regress/namae deleted file mode 100644 index 5a795e4579..0000000000 --- a/test/racc/regress/namae +++ /dev/null @@ -1,634 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - -require 'singleton' -require 'strscan' - -module Namae - class Parser < Racc::Parser - -module_eval(<<'...end namae.y/module_eval...', 'namae.y', 135) - - include Singleton - - attr_reader :options, :input - - def initialize - @input, @options = StringScanner.new(''), { - :debug => false, - :prefer_comma_as_separator => false, - :comma => ',', - :stops => ',;', - :separator => /\s*(\band\b|\&|;)\s*/i, - :title => /\s*\b(sir|lord|count(ess)?|(gen|adm|col|maj|capt|cmdr|lt|sgt|cpl|pvt|prof|dr|md|ph\.?d)\.?)(\s+|$)/i, - :suffix => /\s*\b(JR|Jr|jr|SR|Sr|sr|[IVX]{2,})(\.|\b)/, - :appellation => /\s*\b((mrs?|ms|fr|hr)\.?|miss|herr|frau)(\s+|$)/i - } - end - - def debug? - options[:debug] || ENV['DEBUG'] - end - - def separator - options[:separator] - end - - def comma - options[:comma] - end - - def stops - options[:stops] - end - - def title - options[:title] - end - - def suffix - options[:suffix] - end - - def appellation - options[:appellation] - end - - def prefer_comma_as_separator? - options[:prefer_comma_as_separator] - end - - def parse(input) - parse!(input) - rescue => e - warn e.message if debug? - [] - end - - def parse!(string) - input.string = normalize(string) - reset - do_parse - end - - def normalize(string) - string = string.strip - string - end - - def reset - @commas, @words, @initials, @suffices, @yydebug = 0, 0, 0, 0, debug? - self - end - - private - - def stack - @vstack || @racc_vstack || [] - end - - def last_token - stack[-1] - end - - def consume_separator - return next_token if seen_separator? - @commas, @words, @initials, @suffices = 0, 0, 0, 0 - [:AND, :AND] - end - - def consume_comma - @commas += 1 - [:COMMA, :COMMA] - end - - def consume_word(type, word) - @words += 1 - - case type - when :UWORD - @initials += 1 if word =~ /^[[:upper:]]+\b/ - when :SUFFIX - @suffices += 1 - end - - [type, word] - end - - def seen_separator? - !stack.empty? && last_token == :AND - end - - def suffix? - !@suffices.zero? || will_see_suffix? - end - - def will_see_suffix? - input.peek(8).to_s.strip.split(/\s+/)[0] =~ suffix - end - - def will_see_initial? - input.peek(6).to_s.strip.split(/\s+/)[0] =~ /^[[:upper:]]+\b/ - end - - def seen_full_name? - prefer_comma_as_separator? && @words > 1 && - (@initials > 0 || !will_see_initial?) && !will_see_suffix? - end - - def next_token - case - when input.nil?, input.eos? - nil - when input.scan(separator) - consume_separator - when input.scan(/\s*#{comma}\s*/) - if @commas.zero? && !seen_full_name? || @commas == 1 && suffix? - consume_comma - else - consume_separator - end - when input.scan(/\s+/) - next_token - when input.scan(title) - consume_word(:TITLE, input.matched.strip) - when input.scan(suffix) - consume_word(:SUFFIX, input.matched.strip) - when input.scan(appellation) - [:APPELLATION, input.matched.strip] - when input.scan(/((\\\w+)?\{[^\}]*\})*[[:upper:]][^\s#{stops}]*/) - consume_word(:UWORD, input.matched) - when input.scan(/((\\\w+)?\{[^\}]*\})*[[:lower:]][^\s#{stops}]*/) - consume_word(:LWORD, input.matched) - when input.scan(/(\\\w+)?\{[^\}]*\}[^\s#{stops}]*/) - consume_word(:PWORD, input.matched) - when input.scan(/('[^'\n]+')|("[^"\n]+")/) - consume_word(:NICK, input.matched[1...-1]) - else - raise ArgumentError, - "Failed to parse name #{input.string.inspect}: unmatched data at offset #{input.pos}" - end - end - - def on_error(tid, value, stack) - raise ArgumentError, - "Failed to parse name: unexpected '#{value}' at #{stack.inspect}" - end - -# -*- racc -*- -...end namae.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - -39, 16, 32, 30, -40, 31, 33, -39, 17, -39, - -39, -40, 67, -40, -40, 66, 53, 52, 54, -38, - 59, -22, 39, -34, 45, 58, -38, 53, 52, 54, - 53, 52, 54, 59, 39, 39, 62, 39, 53, 52, - 54, 14, 12, 15, 68, 39, 7, 8, 14, 12, - 15, 58, 39, 7, 8, 14, 22, 15, 24, 14, - 22, 15, 24, 14, 22, 15, 30, 28, 31, 30, - 28, 31, -19, -19, -19, 30, 42, 31, 30, 28, - 31, -20, -20, -20, 30, 46, 31, 30, 28, 31, - 30, 28, 31, -19, -19, -19, 53, 52, 54, 53, - 52, 54, 39, 58, 59 ] - -racc_action_check = [ - 14, 1, 11, 43, 15, 43, 16, 14, 1, 14, - 14, 15, 50, 15, 15, 49, 49, 49, 49, 12, - 50, 12, 23, 49, 27, 37, 12, 32, 32, 32, - 45, 45, 45, 38, 32, 40, 44, 45, 62, 62, - 62, 0, 0, 0, 57, 62, 0, 0, 17, 17, - 17, 60, 61, 17, 17, 9, 9, 9, 9, 20, - 20, 20, 20, 5, 5, 5, 10, 10, 10, 21, - 21, 21, 22, 22, 22, 24, 24, 24, 25, 25, - 25, 28, 28, 28, 29, 29, 29, 35, 35, 35, - 41, 41, 41, 42, 42, 42, 67, 67, 67, 73, - 73, 73, 64, 70, 72 ] - -racc_action_pointer = [ - 38, 1, nil, nil, nil, 60, nil, nil, nil, 52, - 63, 0, 19, nil, 0, 4, 6, 45, nil, nil, - 56, 66, 69, 12, 72, 75, nil, 22, 78, 81, - nil, nil, 24, nil, nil, 84, nil, 16, 23, nil, - 25, 87, 90, 0, 34, 27, nil, nil, nil, 13, - 10, nil, nil, nil, nil, nil, nil, 35, nil, nil, - 42, 42, 35, nil, 92, nil, nil, 93, nil, nil, - 94, nil, 94, 96, nil ] - -racc_action_default = [ - -1, -49, -2, -4, -5, -49, -8, -9, -10, -23, - -49, -49, -19, -28, -30, -31, -49, -49, -6, -7, - -49, -49, -38, -41, -49, -49, -29, -15, -22, -23, - -30, -31, -36, 75, -3, -49, -15, -45, -42, -43, - -41, -49, -22, -23, -14, -36, -21, -16, -24, -37, - -26, -32, -38, -39, -40, -14, -11, -46, -47, -44, - -45, -41, -36, -17, -49, -33, -35, -49, -48, -12, - -45, -18, -25, -27, -13 ] - -racc_goto_table = [ - 3, 37, 26, 50, 56, 18, 2, 9, 47, 23, - 1, 19, 20, 26, 73, 27, 50, 3, 60, 64, - 23, 63, 26, 34, 9, nil, 36, 69, 21, 40, - 44, 43, 25, 50, nil, 72, 26, 74, 71, 70, - 55, nil, nil, 35, nil, nil, 61, 41, nil, 65, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 65 ] - -racc_goto_check = [ - 3, 8, 17, 16, 9, 3, 2, 7, 12, 3, - 1, 4, 7, 17, 14, 10, 16, 3, 8, 15, - 3, 12, 17, 2, 7, nil, 10, 9, 11, 10, - 10, 7, 11, 16, nil, 16, 17, 9, 12, 8, - 10, nil, nil, 11, nil, nil, 10, 11, nil, 3, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 3 ] - -racc_goto_pointer = [ - nil, 10, 6, 0, 6, nil, nil, 7, -22, -33, - 5, 23, -24, nil, -53, -30, -29, -7, nil ] - -racc_goto_default = [ - nil, nil, nil, 51, 4, 5, 6, 29, nil, nil, - 11, 10, nil, 48, 49, nil, 38, 13, 57 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 0, 12, :_reduce_1, - 1, 12, :_reduce_2, - 3, 12, :_reduce_3, - 1, 13, :_reduce_4, - 1, 13, :_reduce_none, - 2, 13, :_reduce_6, - 2, 13, :_reduce_7, - 1, 13, :_reduce_none, - 1, 16, :_reduce_9, - 1, 16, :_reduce_10, - 4, 15, :_reduce_11, - 5, 15, :_reduce_12, - 6, 15, :_reduce_13, - 3, 15, :_reduce_14, - 2, 15, :_reduce_15, - 3, 17, :_reduce_16, - 4, 17, :_reduce_17, - 5, 17, :_reduce_18, - 1, 22, :_reduce_none, - 2, 22, :_reduce_20, - 3, 22, :_reduce_21, - 1, 21, :_reduce_none, - 1, 21, :_reduce_none, - 1, 23, :_reduce_24, - 3, 23, :_reduce_25, - 1, 23, :_reduce_26, - 3, 23, :_reduce_27, - 1, 18, :_reduce_none, - 2, 18, :_reduce_29, - 1, 28, :_reduce_none, - 1, 28, :_reduce_none, - 1, 25, :_reduce_none, - 2, 25, :_reduce_33, - 0, 26, :_reduce_none, - 1, 26, :_reduce_none, - 0, 24, :_reduce_none, - 1, 24, :_reduce_none, - 1, 14, :_reduce_none, - 1, 14, :_reduce_none, - 1, 14, :_reduce_none, - 0, 19, :_reduce_none, - 1, 19, :_reduce_none, - 1, 27, :_reduce_none, - 2, 27, :_reduce_44, - 0, 20, :_reduce_none, - 1, 20, :_reduce_none, - 1, 29, :_reduce_none, - 2, 29, :_reduce_48 ] - -racc_reduce_n = 49 - -racc_shift_n = 75 - -racc_token_table = { - false => 0, - :error => 1, - :COMMA => 2, - :UWORD => 3, - :LWORD => 4, - :PWORD => 5, - :NICK => 6, - :AND => 7, - :APPELLATION => 8, - :TITLE => 9, - :SUFFIX => 10 } - -racc_nt_base = 11 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "COMMA", - "UWORD", - "LWORD", - "PWORD", - "NICK", - "AND", - "APPELLATION", - "TITLE", - "SUFFIX", - "$start", - "names", - "name", - "word", - "display_order", - "honorific", - "sort_order", - "u_words", - "opt_suffices", - "opt_titles", - "last", - "von", - "first", - "opt_words", - "words", - "opt_comma", - "suffices", - "u_word", - "titles" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'namae.y', 39) - def _reduce_1(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 40) - def _reduce_2(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 41) - def _reduce_3(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 43) - def _reduce_4(val, _values, result) - result = Name.new(:given => val[0]) - result - end -.,., - -# reduce 5 omitted - -module_eval(<<'.,.,', 'namae.y', 45) - def _reduce_6(val, _values, result) - result = val[0].merge(:family => val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 46) - def _reduce_7(val, _values, result) - result = val[1].merge(val[0]) - result - end -.,., - -# reduce 8 omitted - -module_eval(<<'.,.,', 'namae.y', 49) - def _reduce_9(val, _values, result) - result = Name.new(:appellation => val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 50) - def _reduce_10(val, _values, result) - result = Name.new(:title => val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 54) - def _reduce_11(val, _values, result) - result = Name.new(:given => val[0], :family => val[1], - :suffix => val[2], :title => val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 59) - def _reduce_12(val, _values, result) - result = Name.new(:given => val[0], :nick => val[1], - :family => val[2], :suffix => val[3], :title => val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 64) - def _reduce_13(val, _values, result) - result = Name.new(:given => val[0], :nick => val[1], - :particle => val[2], :family => val[3], - :suffix => val[4], :title => val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 70) - def _reduce_14(val, _values, result) - result = Name.new(:given => val[0], :particle => val[1], - :family => val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 75) - def _reduce_15(val, _values, result) - result = Name.new(:particle => val[0], :family => val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 80) - def _reduce_16(val, _values, result) - result = Name.new({ :family => val[0], :suffix => val[2][0], - :given => val[2][1] }, !!val[2][0]) - - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 85) - def _reduce_17(val, _values, result) - result = Name.new({ :particle => val[0], :family => val[1], - :suffix => val[3][0], :given => val[3][1] }, !!val[3][0]) - - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 90) - def _reduce_18(val, _values, result) - result = Name.new({ :particle => val[0,2].join(' '), :family => val[2], - :suffix => val[4][0], :given => val[4][1] }, !!val[4][0]) - - result - end -.,., - -# reduce 19 omitted - -module_eval(<<'.,.,', 'namae.y', 96) - def _reduce_20(val, _values, result) - result = val.join(' ') - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 97) - def _reduce_21(val, _values, result) - result = val.join(' ') - result - end -.,., - -# reduce 22 omitted - -# reduce 23 omitted - -module_eval(<<'.,.,', 'namae.y', 101) - def _reduce_24(val, _values, result) - result = [nil,val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 102) - def _reduce_25(val, _values, result) - result = [val[2],val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 103) - def _reduce_26(val, _values, result) - result = [val[0],nil] - result - end -.,., - -module_eval(<<'.,.,', 'namae.y', 104) - def _reduce_27(val, _values, result) - result = [val[0],val[2]] - result - end -.,., - -# reduce 28 omitted - -module_eval(<<'.,.,', 'namae.y', 107) - def _reduce_29(val, _values, result) - result = val.join(' ') - result - end -.,., - -# reduce 30 omitted - -# reduce 31 omitted - -# reduce 32 omitted - -module_eval(<<'.,.,', 'namae.y', 112) - def _reduce_33(val, _values, result) - result = val.join(' ') - result - end -.,., - -# reduce 34 omitted - -# reduce 35 omitted - -# reduce 36 omitted - -# reduce 37 omitted - -# reduce 38 omitted - -# reduce 39 omitted - -# reduce 40 omitted - -# reduce 41 omitted - -# reduce 42 omitted - -# reduce 43 omitted - -module_eval(<<'.,.,', 'namae.y', 122) - def _reduce_44(val, _values, result) - result = val.join(' ') - result - end -.,., - -# reduce 45 omitted - -# reduce 46 omitted - -# reduce 47 omitted - -module_eval(<<'.,.,', 'namae.y', 127) - def _reduce_48(val, _values, result) - result = val.join(' ') - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module Namae diff --git a/test/racc/regress/nasl b/test/racc/regress/nasl deleted file mode 100644 index 52a329d20a..0000000000 --- a/test/racc/regress/nasl +++ /dev/null @@ -1,2548 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.2 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - - -require 'nasl/parser/tree' - -require 'nasl/parser/argument' -require 'nasl/parser/array' -require 'nasl/parser/assigment' -require 'nasl/parser/block' -require 'nasl/parser/break' -require 'nasl/parser/call' -require 'nasl/parser/comment' -require 'nasl/parser/continue' -require 'nasl/parser/decrement' -require 'nasl/parser/empty' -require 'nasl/parser/export' -require 'nasl/parser/expression' -require 'nasl/parser/for' -require 'nasl/parser/foreach' -require 'nasl/parser/function' -require 'nasl/parser/global' -require 'nasl/parser/identifier' -require 'nasl/parser/if' -require 'nasl/parser/import' -require 'nasl/parser/include' -require 'nasl/parser/increment' -require 'nasl/parser/integer' -require 'nasl/parser/ip' -require 'nasl/parser/key_value_pair' -require 'nasl/parser/list' -require 'nasl/parser/local' -require 'nasl/parser/lvalue' -require 'nasl/parser/parameter' -require 'nasl/parser/reference' -require 'nasl/parser/repeat' -require 'nasl/parser/repetition' -require 'nasl/parser/return' -require 'nasl/parser/string' -require 'nasl/parser/undefined' -require 'nasl/parser/while' - -module Nasl - class Grammar < Racc::Parser - -module_eval(<<'...end nasl.y/module_eval...', 'nasl.y', 582) - -def n(cls, *args) - begin - Nasl.const_get(cls).new(@tree, *args) - rescue - puts "An exception occurred during the creation of a #{cls} instance." - puts - puts "The arguments passed to the constructor were:" - puts args - puts - puts @tok.last.context - puts - raise - end -end - -def c(*args) - n(:Comment, *args) - args[1] -end - -def on_error(type, value, stack) - raise ParseException, "The language's grammar does not permit #{value.name} to appear here", value.context -end - -def next_token - @tok = @tkz.get_token - - if @first && @tok.first == :COMMENT - n(:Comment, @tok.last) - @tok = @tkz.get_token - end - @first = false - - return @tok -end - -def parse(env, code, path) - @first = true - @tree = Tree.new(env) - @tkz = Tokenizer.new(code, path) - @tree.concat(do_parse) -end - -...end nasl.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 144, 143, 161, 162, 163, 164, 165, 166, 157, 158, - 159, 160, 153, 152, 151, 154, 155, 156, 145, 146, - 147, 149, 150, 82, 54, 111, 148, 81, 218, 83, - 55, 51, 50, 56, 54, 54, 80, 11, 78, 65, - 55, 55, 53, 63, 54, 54, 66, 95, 102, 103, - 55, 55, 53, 53, 64, 54, 218, 269, 67, 94, - 96, 55, 53, 53, 97, 98, 99, 100, 101, 102, - 103, 104, 82, 53, 267, 217, 81, 130, 83, 131, - 51, 50, 130, 54, 131, 80, 130, 54, 131, 55, - 51, 50, 68, 55, 54, 72, 95, 147, 149, 150, - 55, 53, 73, 148, 54, 53, 102, 103, 74, 96, - 55, 109, 53, 97, 98, 99, 100, 101, 102, 103, - 104, 82, 53, 112, 114, 81, 54, 83, 133, 51, - 50, 134, 55, 136, 80, 137, 54, 138, 141, 51, - 50, 167, 55, 54, 53, 95, 147, 149, 150, 55, - 10, 11, 148, 54, 53, 172, 37, 37, 96, 55, - 185, 53, 97, 98, 99, 100, 101, 102, 103, 104, - 82, 53, 192, 195, 81, 225, 83, 226, 51, 50, - 148, 54, 148, 80, 179, 148, 253, 55, 254, 255, - 54, 54, 54, 256, 95, 257, 55, 55, 55, 53, - 97, 98, 99, 100, 101, 102, 103, 96, 53, 53, - 53, 97, 98, 99, 100, 101, 102, 103, 104, 82, - 54, 258, 259, 81, 260, 83, 55, 51, 50, 262, - 54, 266, 80, 268, 270, 43, 55, 273, 53, 54, - 274, 54, 275, 95, 148, 55, 148, 55, 53, 97, - 98, 99, 100, 101, 102, 103, 96, 53, 148, 53, - 97, 98, 99, 100, 101, 102, 103, 104, 82, 148, - 276, 43, 81, 300, 83, 301, 51, 50, 306, nil, - nil, 80, 154, 155, 156, 145, 146, 147, 149, 150, - 54, nil, 95, 148, nil, nil, 55, nil, 145, 146, - 147, 149, 150, nil, nil, 96, 148, nil, 53, 97, - 98, 99, 100, 101, 102, 103, 104, 82, nil, nil, - nil, 81, nil, 83, nil, 51, 50, nil, nil, nil, - 80, nil, 145, 146, 147, 149, 150, nil, nil, 54, - 148, 95, nil, nil, nil, 55, nil, nil, 145, 146, - 147, 149, 150, 94, 96, 184, 148, 53, 97, 98, - 99, 100, 101, 102, 103, 104, 82, nil, nil, nil, - 81, nil, 83, nil, 51, 50, nil, nil, nil, 80, - 97, 98, 99, 100, 101, nil, nil, nil, 54, nil, - 95, nil, nil, nil, 55, 97, 98, 99, 100, 101, - nil, nil, nil, 96, nil, nil, 53, 97, 98, 99, - 100, 101, 102, 103, 104, 82, nil, nil, nil, 81, - nil, 83, nil, 51, 50, nil, nil, nil, 80, 97, - 98, 99, 100, 101, nil, nil, nil, 54, nil, 95, - nil, nil, nil, 55, nil, nil, nil, nil, nil, nil, - nil, nil, 96, nil, nil, 53, 97, 98, 99, 100, - 101, 102, 103, 104, 82, nil, nil, nil, 81, nil, - 83, nil, 51, 50, nil, nil, nil, 80, nil, nil, - nil, nil, nil, nil, nil, nil, 54, nil, 95, nil, - nil, nil, 55, nil, nil, nil, nil, nil, nil, nil, - 94, 96, nil, nil, 53, 97, 98, 99, 100, 101, - 102, 103, 104, 82, nil, nil, nil, 81, nil, 83, - nil, 51, 50, nil, nil, nil, 80, nil, nil, nil, - nil, nil, nil, nil, nil, 54, nil, 95, nil, nil, - nil, 55, nil, nil, nil, nil, nil, nil, nil, nil, - 96, nil, nil, 53, 97, 98, 99, 100, 101, 102, - 103, 104, 82, nil, nil, nil, 81, nil, 83, nil, - 51, 50, nil, nil, nil, 80, nil, nil, nil, nil, - nil, nil, nil, nil, 54, nil, 95, nil, nil, nil, - 55, nil, nil, nil, nil, nil, nil, nil, nil, 96, - nil, nil, 53, 97, 98, 99, 100, 101, 102, 103, - 104, 82, nil, nil, nil, 81, nil, 83, nil, 51, - 50, nil, nil, nil, 80, nil, nil, nil, nil, nil, - nil, nil, nil, 54, nil, 95, nil, nil, nil, 55, - nil, nil, nil, nil, nil, nil, nil, nil, 96, nil, - nil, 53, 97, 98, 99, 100, 101, 102, 103, 104, - 82, nil, nil, nil, 81, nil, 83, nil, 51, 50, - nil, nil, nil, 80, nil, nil, nil, nil, nil, nil, - nil, nil, 54, nil, 95, nil, nil, nil, 55, nil, - nil, nil, nil, nil, nil, nil, nil, 96, nil, nil, - 53, 97, 98, 99, 100, 101, 102, 103, 104, 82, - nil, nil, nil, 81, nil, 83, nil, 51, 50, nil, - nil, nil, 80, nil, nil, nil, nil, nil, nil, nil, - nil, 54, nil, 95, nil, nil, nil, 55, nil, nil, - nil, nil, nil, nil, nil, nil, 96, nil, nil, 53, - 97, 98, 99, 100, 101, 102, 103, 104, 82, nil, - nil, nil, 81, nil, 83, nil, 51, 50, nil, nil, - nil, 80, nil, nil, nil, nil, nil, nil, nil, nil, - 54, nil, 95, nil, nil, nil, 55, nil, nil, nil, - nil, nil, nil, nil, nil, 96, nil, nil, 53, 97, - 98, 99, 100, 101, 102, 103, 104, 82, nil, nil, - nil, 81, nil, 83, nil, 51, 50, nil, nil, nil, - 80, nil, nil, nil, nil, nil, nil, nil, nil, 54, - nil, 95, nil, nil, nil, 55, nil, nil, nil, nil, - nil, nil, nil, nil, 96, nil, nil, 53, 97, 98, - 99, 100, 101, 102, 103, 104, 82, nil, nil, nil, - 81, nil, 83, nil, 51, 50, nil, nil, nil, 80, - nil, nil, nil, nil, nil, nil, nil, nil, 54, nil, - 95, nil, nil, nil, 55, nil, nil, nil, nil, nil, - nil, nil, nil, 96, nil, nil, 53, 97, 98, 99, - 100, 101, 102, 103, 104, 82, nil, nil, nil, 81, - nil, 83, nil, 51, 50, nil, nil, nil, 80, 208, - nil, nil, nil, nil, nil, nil, nil, 54, nil, 95, - nil, nil, nil, 55, nil, nil, nil, nil, nil, nil, - nil, 94, 96, nil, nil, 53, 97, 98, 99, 100, - 101, 102, 103, 104, 82, nil, nil, nil, 81, nil, - 83, nil, 51, 50, nil, nil, nil, 80, nil, nil, - nil, nil, nil, nil, nil, nil, 54, nil, 95, nil, - nil, nil, 55, nil, nil, nil, nil, nil, nil, nil, - nil, 96, nil, nil, 53, 97, 98, 99, 100, 101, - 102, 103, 104, 82, nil, nil, nil, 81, nil, 83, - nil, 51, 50, nil, nil, nil, 80, nil, nil, nil, - nil, nil, nil, nil, nil, 54, nil, 95, nil, nil, - nil, 55, nil, nil, nil, nil, nil, nil, nil, 94, - 96, nil, nil, 53, 97, 98, 99, 100, 101, 102, - 103, 104, 82, nil, nil, nil, 81, nil, 83, nil, - 51, 50, nil, nil, nil, 80, nil, nil, nil, nil, - nil, nil, nil, nil, 54, nil, 95, nil, nil, nil, - 55, nil, nil, nil, nil, nil, nil, nil, nil, 96, - nil, nil, 53, 97, 98, 99, 100, 101, 102, 103, - 104, 82, nil, nil, nil, 81, nil, 83, nil, 51, - 50, nil, nil, nil, 80, nil, nil, nil, nil, nil, - nil, nil, nil, 54, nil, 95, nil, nil, nil, 55, - nil, nil, nil, nil, nil, nil, nil, nil, 96, nil, - nil, 53, 97, 98, 99, 100, 101, 102, 103, 104, - 82, nil, nil, nil, 81, nil, 83, nil, 51, 50, - nil, nil, nil, 80, nil, nil, nil, nil, nil, nil, - nil, nil, 54, nil, 95, nil, nil, nil, 55, nil, - nil, nil, nil, nil, nil, nil, nil, 96, nil, nil, - 53, 97, 98, 99, 100, 101, 102, 103, 104, 82, - nil, nil, nil, 81, nil, 83, nil, 51, 50, nil, - nil, nil, 80, nil, nil, nil, nil, nil, nil, nil, - nil, 54, nil, 95, nil, nil, nil, 55, nil, nil, - nil, nil, nil, nil, nil, nil, 96, nil, nil, 53, - 97, 98, 99, 100, 101, 102, 103, 104, 82, nil, - nil, nil, 81, nil, 83, nil, 51, 50, nil, nil, - nil, 80, nil, nil, nil, nil, nil, nil, nil, nil, - 54, nil, 95, nil, nil, nil, 55, nil, nil, nil, - nil, nil, nil, nil, nil, 96, nil, nil, 53, 97, - 98, 99, 100, 101, 102, 103, 104, 82, nil, nil, - nil, 81, nil, 83, nil, 51, 50, nil, nil, nil, - 80, nil, nil, nil, nil, nil, nil, nil, nil, 54, - nil, 95, nil, nil, nil, 55, nil, nil, nil, nil, - nil, nil, nil, nil, 96, nil, nil, 53, 97, 98, - 99, 100, 101, 102, 103, 104, 82, nil, nil, nil, - 81, nil, 83, nil, 51, 50, nil, nil, nil, 80, - nil, nil, nil, nil, nil, nil, nil, nil, 54, nil, - 95, nil, nil, nil, 55, nil, nil, nil, nil, nil, - nil, nil, nil, 96, nil, nil, 53, 97, 98, 99, - 100, 101, 102, 103, 104, 82, nil, nil, nil, 81, - nil, 83, nil, 51, 50, nil, nil, nil, 80, nil, - nil, nil, nil, nil, nil, nil, nil, 54, nil, 95, - nil, nil, nil, 55, nil, nil, nil, nil, nil, nil, - nil, nil, 96, nil, nil, 53, 97, 98, 99, 100, - 101, 102, 103, 104, 82, nil, nil, nil, 81, nil, - 83, nil, 51, 50, nil, nil, nil, 80, nil, nil, - nil, nil, nil, nil, nil, nil, 54, nil, 95, nil, - nil, nil, 55, nil, nil, nil, nil, nil, nil, nil, - nil, 96, nil, nil, 53, 97, 98, 99, 100, 101, - 102, 103, 104, 82, nil, nil, nil, 81, nil, 83, - nil, 51, 50, nil, nil, nil, 80, nil, nil, nil, - nil, nil, nil, nil, nil, 54, nil, 95, nil, nil, - nil, 55, nil, nil, nil, nil, nil, nil, nil, nil, - 96, nil, nil, 53, 97, 98, 99, 100, 101, 102, - 103, 104, 82, nil, nil, nil, 81, nil, 83, nil, - 51, 50, nil, nil, nil, 80, nil, nil, nil, nil, - nil, nil, nil, nil, 54, nil, 95, nil, nil, nil, - 55, nil, nil, nil, nil, nil, nil, nil, nil, 96, - nil, nil, 53, 97, 98, 99, 100, 101, 102, 103, - 104, 82, nil, nil, nil, 81, nil, 83, nil, 51, - 50, nil, nil, nil, 80, nil, nil, nil, nil, nil, - nil, nil, nil, 54, nil, 95, nil, nil, nil, 55, - nil, nil, nil, nil, nil, nil, nil, nil, 96, nil, - nil, 53, 97, 98, 99, 100, 101, 102, 103, 104, - 82, nil, nil, nil, 81, nil, 83, nil, 51, 50, - nil, nil, nil, 80, nil, nil, nil, nil, nil, nil, - nil, nil, 54, nil, 95, nil, nil, nil, 55, nil, - nil, nil, nil, nil, nil, nil, nil, 96, nil, nil, - 53, 97, 98, 99, 100, 101, 102, 103, 104, 82, - nil, nil, nil, 81, nil, 83, nil, 51, 50, nil, - nil, nil, 80, nil, nil, nil, nil, nil, nil, nil, - nil, 54, nil, 95, nil, nil, nil, 55, nil, nil, - nil, nil, nil, nil, nil, nil, 96, nil, nil, 53, - 97, 98, 99, 100, 101, 102, 103, 104, 82, nil, - nil, nil, 81, nil, 83, nil, 51, 50, nil, nil, - nil, 80, nil, nil, nil, nil, nil, nil, nil, nil, - 54, nil, 95, nil, nil, nil, 55, nil, nil, nil, - nil, nil, nil, nil, nil, 96, nil, nil, 53, 97, - 98, 99, 100, 101, 102, 103, 104, 82, nil, nil, - nil, 81, nil, 83, nil, 51, 50, nil, nil, nil, - 80, nil, nil, nil, nil, nil, nil, nil, nil, 54, - nil, 95, nil, nil, nil, 55, nil, nil, nil, nil, - nil, nil, nil, nil, 96, nil, nil, 53, 97, 98, - 99, 100, 101, 102, 103, 104, 82, nil, nil, nil, - 81, nil, 83, nil, 51, 50, nil, nil, nil, 80, - nil, nil, nil, nil, nil, nil, nil, nil, 54, nil, - 95, nil, nil, nil, 55, nil, nil, nil, nil, nil, - nil, nil, nil, 96, nil, nil, 53, 97, 98, 99, - 100, 101, 102, 103, 104, 82, nil, nil, nil, 81, - nil, 83, nil, 51, 50, nil, nil, nil, 80, nil, - nil, nil, nil, nil, nil, nil, nil, 54, nil, 95, - nil, nil, nil, 55, nil, nil, nil, nil, nil, nil, - nil, nil, 96, nil, nil, 53, 97, 98, 99, 100, - 101, 102, 103, 104, 82, nil, nil, nil, 81, nil, - 83, nil, 51, 50, nil, nil, nil, 80, nil, nil, - nil, nil, nil, nil, nil, nil, 54, nil, 95, nil, - nil, nil, 55, nil, nil, nil, nil, nil, nil, nil, - nil, 96, nil, nil, 53, 97, 98, 99, 100, 101, - 102, 103, 104, 82, nil, nil, nil, 81, nil, 83, - nil, 51, 50, nil, nil, nil, 80, nil, nil, nil, - nil, nil, nil, nil, nil, 54, nil, 95, nil, nil, - nil, 55, nil, nil, nil, nil, nil, nil, nil, nil, - 96, nil, nil, 53, 97, 98, 99, 100, 101, 102, - 103, 104, 82, nil, nil, nil, 81, nil, 83, nil, - 51, 50, nil, nil, nil, 80, nil, nil, nil, nil, - nil, nil, nil, nil, 54, nil, 95, nil, nil, nil, - 55, nil, nil, nil, nil, nil, nil, nil, nil, 96, - nil, nil, 53, 97, 98, 99, 100, 101, 102, 103, - 104, 82, nil, nil, nil, 81, nil, 83, nil, 51, - 50, nil, nil, nil, 80, nil, nil, nil, nil, nil, - nil, nil, nil, 54, nil, 95, nil, nil, nil, 55, - nil, nil, nil, nil, nil, nil, nil, nil, 96, nil, - nil, 53, 97, 98, 99, 100, 101, 102, 103, 104, - 82, nil, nil, nil, 81, nil, 83, nil, 51, 50, - nil, nil, nil, 80, nil, nil, nil, nil, nil, nil, - nil, nil, 54, nil, 95, nil, nil, nil, 55, nil, - nil, nil, nil, nil, nil, nil, nil, 96, nil, nil, - 53, 97, 98, 99, 100, 101, 102, 103, 104, 82, - nil, nil, nil, 81, nil, 83, nil, 51, 50, nil, - nil, nil, 80, nil, nil, nil, nil, nil, nil, nil, - nil, 54, nil, 95, nil, nil, nil, 55, nil, nil, - nil, nil, nil, nil, nil, nil, 96, nil, nil, 53, - 97, 98, 99, 100, 101, 102, 103, 104, 82, nil, - nil, nil, 81, nil, 83, nil, 51, 50, nil, nil, - nil, 80, nil, nil, nil, nil, nil, nil, nil, nil, - 54, nil, 95, nil, nil, nil, 55, nil, nil, nil, - nil, nil, nil, nil, nil, 96, nil, nil, 53, 97, - 98, 99, 100, 101, 102, 103, 104, 82, nil, nil, - nil, 81, nil, 83, nil, 51, 50, nil, nil, nil, - 80, nil, nil, nil, nil, nil, nil, nil, nil, 54, - nil, 95, nil, nil, nil, 55, nil, nil, nil, nil, - nil, nil, nil, nil, 96, nil, nil, 53, 97, 98, - 99, 100, 101, 102, 103, 104, 82, nil, nil, nil, - 81, nil, 83, nil, 51, 50, nil, nil, nil, 80, - nil, nil, nil, nil, nil, nil, nil, nil, 54, nil, - 95, nil, nil, nil, 55, nil, nil, nil, nil, nil, - nil, nil, 94, 96, nil, nil, 53, 97, 98, 99, - 100, 101, 102, 103, 104, 82, nil, nil, nil, 81, - nil, 83, nil, 51, 50, nil, nil, nil, 80, nil, - nil, nil, nil, nil, nil, nil, nil, 54, nil, 95, - nil, nil, nil, 55, nil, nil, nil, nil, nil, nil, - nil, 94, 96, nil, nil, 53, 97, 98, 99, 100, - 101, 102, 103, 104, 82, nil, nil, nil, 81, nil, - 83, nil, 51, 50, nil, nil, nil, 80, nil, nil, - nil, nil, nil, nil, nil, nil, 54, nil, 95, nil, - nil, nil, 55, nil, nil, nil, nil, nil, nil, nil, - 94, 96, nil, nil, 53, 97, 98, 99, 100, 101, - 102, 103, 104, 82, nil, nil, nil, 81, nil, 83, - nil, 51, 50, nil, nil, nil, 80, nil, nil, nil, - nil, nil, nil, nil, nil, 54, nil, 95, nil, nil, - nil, 55, nil, nil, nil, nil, nil, nil, nil, 94, - 96, nil, nil, 53, 97, 98, 99, 100, 101, 102, - 103, 104, 82, nil, nil, nil, 81, nil, 83, nil, - 51, 50, nil, nil, nil, 80, nil, nil, nil, nil, - nil, nil, nil, nil, 54, nil, 95, nil, nil, nil, - 55, nil, nil, nil, nil, nil, nil, nil, nil, 96, - nil, nil, 53, 97, 98, 99, 100, 101, 102, 103, - 104, 82, nil, nil, nil, 81, nil, 83, nil, 51, - 50, nil, nil, nil, 80, nil, nil, nil, nil, nil, - nil, nil, nil, 54, nil, 95, nil, nil, nil, 55, - nil, nil, nil, nil, nil, nil, nil, nil, 96, nil, - nil, 53, 97, 98, 99, 100, 101, 102, 103, 104, - 82, nil, nil, nil, 81, nil, 83, nil, 51, 50, - nil, nil, nil, 80, nil, nil, nil, nil, nil, nil, - nil, nil, 54, nil, 95, nil, nil, nil, 55, nil, - nil, nil, nil, nil, nil, nil, 94, 96, nil, nil, - 53, 97, 98, 99, 100, 101, 102, 103, 104, 82, - nil, nil, nil, 81, nil, 83, nil, 51, 50, nil, - nil, nil, 80, nil, nil, nil, nil, nil, nil, nil, - nil, 54, nil, 95, nil, nil, nil, 55, nil, nil, - nil, nil, nil, nil, nil, 94, 96, nil, nil, 53, - 97, 98, 99, 100, 101, 102, 103, 104, 115, 116, - 117, 118, 119, 120, 123, 122, 121, 115, 116, 117, - 118, 119, 120, 123, 122, 121, 153, 152, 151, 154, - 155, 156, 145, 146, 147, 149, 150, nil, nil, nil, - 148, nil, nil, nil, 126, 125, nil, nil, nil, 124, - nil, nil, nil, 126, 125, nil, nil, nil, 124, 144, - 143, 161, 162, 163, 164, 165, 166, 157, 158, 159, - 160, 153, 152, 151, 154, 155, 156, 145, 146, 147, - 149, 150, nil, nil, nil, 148, nil, nil, nil, nil, - nil, nil, nil, 142, 144, 143, 161, 162, 163, 164, - 165, 166, 157, 158, 159, 160, 153, 152, 151, 154, - 155, 156, 145, 146, 147, 149, 150, nil, nil, nil, - 148, nil, nil, nil, nil, nil, nil, nil, 221, 144, - 143, 161, 162, 163, 164, 165, 166, 157, 158, 159, - 160, 153, 152, 151, 154, 155, 156, 145, 146, 147, - 149, 150, nil, nil, nil, 148, nil, nil, nil, nil, - nil, nil, nil, 289, 144, 143, 161, 162, 163, 164, - 165, 166, 157, 158, 159, 160, 153, 152, 151, 154, - 155, 156, 145, 146, 147, 149, 150, nil, nil, nil, - 148, nil, nil, nil, nil, nil, nil, nil, 297, 144, - 143, 161, 162, 163, 164, 165, 166, 157, 158, 159, - 160, 153, 152, 151, 154, 155, 156, 145, 146, 147, - 149, 150, nil, nil, nil, 148, nil, nil, nil, nil, - nil, nil, 251, 144, 143, 161, 162, 163, 164, 165, - 166, 157, 158, 159, 160, 153, 152, 151, 154, 155, - 156, 145, 146, 147, 149, 150, nil, nil, nil, 148, - nil, nil, nil, nil, nil, nil, 263, 144, 143, 161, - 162, 163, 164, 165, 166, 157, 158, 159, 160, 153, - 152, 151, 154, 155, 156, 145, 146, 147, 149, 150, - nil, nil, nil, 148, nil, nil, nil, nil, nil, nil, - 265, 144, 143, 161, 162, 163, 164, 165, 166, 157, - 158, 159, 160, 153, 152, 151, 154, 155, 156, 145, - 146, 147, 149, 150, nil, nil, nil, 148, nil, nil, - nil, nil, nil, nil, 286, 144, 143, 161, 162, 163, - 164, 165, 166, 157, 158, 159, 160, 153, 152, 151, - 154, 155, 156, 145, 146, 147, 149, 150, nil, nil, - nil, 148, 51, 50, 4, 10, 11, nil, 299, 36, - 32, 34, 37, 39, 40, 41, 54, 42, 43, nil, - 44, 45, 55, 46, nil, 47, nil, 48, 51, 50, - 4, 10, 11, nil, 53, 36, 32, 34, 37, 39, - 40, 41, 54, 42, 43, nil, 44, 45, 55, 46, - nil, 47, nil, 48, 51, 50, 105, nil, nil, nil, - 53, 36, 32, 34, 37, 39, 40, 41, 54, 42, - 43, 107, 44, 45, 55, 46, nil, 47, nil, 48, - 51, 50, 105, nil, nil, nil, 53, 36, 32, 34, - 37, 39, 40, 41, 54, 42, 43, nil, 44, 45, - 55, 46, nil, 47, nil, 48, 51, 50, 105, nil, - nil, nil, 53, 36, 32, 34, 37, 39, 40, 41, - 54, 42, 43, nil, 44, 45, 55, 46, nil, 47, - nil, 48, 51, 50, 105, nil, nil, nil, 53, 36, - 32, 34, 37, 39, 40, 41, 54, 42, 43, nil, - 44, 45, 55, 46, nil, 47, nil, 48, 51, 50, - 105, nil, nil, nil, 53, 36, 32, 34, 37, 39, - 40, 41, 54, 42, 43, nil, 44, 45, 55, 46, - nil, 47, nil, 48, 51, 50, 105, nil, nil, nil, - 53, 36, 32, 34, 37, 39, 40, 41, 54, 42, - 43, nil, 44, 45, 55, 46, nil, 47, nil, 48, - 51, 50, 105, nil, nil, nil, 53, 36, 32, 34, - 37, 39, 40, 41, 54, 42, 43, nil, 44, 45, - 55, 46, nil, 47, nil, 48, 51, 50, 105, nil, - nil, nil, 53, 36, 32, 34, 37, 39, 40, 41, - 54, 42, 43, nil, 44, 45, 55, 46, nil, 47, - nil, 48, 51, 50, 105, nil, nil, nil, 53, 36, - 32, 34, 37, 39, 40, 41, 54, 42, 43, nil, - 44, 45, 55, 46, nil, 47, nil, 48, nil, nil, - nil, nil, nil, nil, 53, 144, 143, 161, 162, 163, - 164, 165, 166, 157, 158, 159, 160, 153, 152, 151, - 154, 155, 156, 145, 146, 147, 149, 150, nil, nil, - nil, 148, 144, 143, 161, 162, 163, 164, 165, 166, - 157, 158, 159, 160, 153, 152, 151, 154, 155, 156, - 145, 146, 147, 149, 150, nil, nil, nil, 148, 144, - 143, 161, 162, 163, 164, 165, 166, 157, 158, 159, - 160, 153, 152, 151, 154, 155, 156, 145, 146, 147, - 149, 150, nil, nil, nil, 148, 144, 143, 161, 162, - 163, 164, 165, 166, 157, 158, 159, 160, 153, 152, - 151, 154, 155, 156, 145, 146, 147, 149, 150, nil, - nil, nil, 148, 144, 143, 161, 162, 163, 164, 165, - 166, 157, 158, 159, 160, 153, 152, 151, 154, 155, - 156, 145, 146, 147, 149, 150, nil, nil, nil, 148, - 144, 143, 161, 162, 163, 164, 165, 166, 157, 158, - 159, 160, 153, 152, 151, 154, 155, 156, 145, 146, - 147, 149, 150, nil, nil, nil, 148, 144, 143, 161, - 162, 163, 164, 165, 166, 157, 158, 159, 160, 153, - 152, 151, 154, 155, 156, 145, 146, 147, 149, 150, - nil, nil, nil, 148, 144, 143, 161, 162, 163, 164, - 165, 166, 157, 158, 159, 160, 153, 152, 151, 154, - 155, 156, 145, 146, 147, 149, 150, nil, nil, nil, - 148, 144, 143, 161, 162, 163, 164, 165, 166, 157, - 158, 159, 160, 153, 152, 151, 154, 155, 156, 145, - 146, 147, 149, 150, nil, nil, nil, 148, 144, 143, - 161, 162, 163, 164, 165, 166, 157, 158, 159, 160, - 153, 152, 151, 154, 155, 156, 145, 146, 147, 149, - 150, nil, nil, nil, 148, 144, 143, 161, 162, 163, - 164, 165, 166, 157, 158, 159, 160, 153, 152, 151, - 154, 155, 156, 145, 146, 147, 149, 150, nil, nil, - nil, 148, 144, 143, 161, 162, 163, 164, 165, 166, - 157, 158, 159, 160, 153, 152, 151, 154, 155, 156, - 145, 146, 147, 149, 150, nil, nil, nil, 148, 144, - 143, 161, 162, 163, 164, 165, 166, 157, 158, 159, - 160, 153, 152, 151, 154, 155, 156, 145, 146, 147, - 149, 150, nil, nil, nil, 148, 144, 143, 161, 162, - 163, 164, 165, 166, 157, 158, 159, 160, 153, 152, - 151, 154, 155, 156, 145, 146, 147, 149, 150, nil, - nil, nil, 148, 144, 143, 161, 162, 163, 164, 165, - 166, 157, 158, 159, 160, 153, 152, 151, 154, 155, - 156, 145, 146, 147, 149, 150, nil, nil, nil, 148, - 144, 143, 161, 162, 163, 164, 165, 166, 157, 158, - 159, 160, 153, 152, 151, 154, 155, 156, 145, 146, - 147, 149, 150, nil, nil, nil, 148, 143, 161, 162, - 163, 164, 165, 166, 157, 158, 159, 160, 153, 152, - 151, 154, 155, 156, 145, 146, 147, 149, 150, nil, - nil, nil, 148, 161, 162, 163, 164, 165, 166, 157, - 158, 159, 160, 153, 152, 151, 154, 155, 156, 145, - 146, 147, 149, 150, nil, nil, nil, 148, 153, 152, - 151, 154, 155, 156, 145, 146, 147, 149, 150, nil, - nil, nil, 148, 153, 152, 151, 154, 155, 156, 145, - 146, 147, 149, 150, nil, nil, nil, 148, 153, 152, - 151, 154, 155, 156, 145, 146, 147, 149, 150, nil, - nil, nil, 148, 153, 152, 151, 154, 155, 156, 145, - 146, 147, 149, 150, nil, nil, nil, 148, 153, 152, - 151, 154, 155, 156, 145, 146, 147, 149, 150, nil, - nil, nil, 148, 153, 152, 151, 154, 155, 156, 145, - 146, 147, 149, 150, nil, nil, nil, 148, 153, 152, - 151, 154, 155, 156, 145, 146, 147, 149, 150, nil, - nil, nil, 148, 153, 152, 151, 154, 155, 156, 145, - 146, 147, 149, 150, nil, nil, nil, 148, 153, 152, - 151, 154, 155, 156, 145, 146, 147, 149, 150, nil, - nil, nil, 148, 152, 151, 154, 155, 156, 145, 146, - 147, 149, 150, nil, nil, nil, 148, 151, 154, 155, - 156, 145, 146, 147, 149, 150, nil, nil, nil, 148 ] - -racc_action_check = [ - 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, - 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, - 213, 213, 213, 42, 11, 45, 213, 42, 273, 42, - 11, 42, 42, 1, 45, 37, 42, 10, 42, 33, - 45, 37, 11, 31, 41, 42, 33, 42, 73, 73, - 41, 42, 45, 37, 32, 273, 134, 213, 34, 42, - 42, 273, 41, 42, 42, 42, 42, 42, 42, 42, - 42, 42, 66, 273, 210, 134, 66, 210, 66, 210, - 66, 66, 52, 134, 52, 66, 132, 50, 132, 134, - 109, 109, 35, 50, 66, 38, 66, 229, 229, 229, - 66, 134, 39, 229, 109, 50, 74, 74, 40, 66, - 109, 44, 66, 66, 66, 66, 66, 66, 66, 66, - 66, 80, 109, 46, 48, 80, 51, 80, 56, 80, - 80, 62, 51, 69, 80, 70, 94, 71, 75, 297, - 297, 77, 94, 80, 51, 80, 230, 230, 230, 80, - 4, 4, 230, 297, 94, 90, 105, 4, 80, 297, - 106, 80, 80, 80, 80, 80, 80, 80, 80, 80, - 81, 297, 110, 113, 81, 139, 81, 140, 81, 81, - 169, 95, 170, 81, 95, 171, 174, 95, 175, 176, - 111, 131, 81, 177, 81, 178, 111, 131, 81, 95, - 95, 95, 95, 95, 95, 95, 95, 81, 111, 131, - 81, 81, 81, 81, 81, 81, 81, 81, 81, 82, - 138, 182, 183, 82, 187, 82, 138, 82, 82, 193, - 256, 207, 82, 212, 216, 217, 256, 220, 138, 218, - 225, 82, 226, 82, 231, 218, 232, 82, 256, 256, - 256, 256, 256, 256, 256, 256, 82, 218, 233, 82, - 82, 82, 82, 82, 82, 82, 82, 82, 83, 234, - 252, 270, 83, 288, 83, 296, 83, 83, 302, nil, - nil, 83, 235, 235, 235, 235, 235, 235, 235, 235, - 83, nil, 83, 235, nil, nil, 83, nil, 238, 238, - 238, 238, 238, nil, nil, 83, 238, nil, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 96, nil, nil, - nil, 96, nil, 96, nil, 96, 96, nil, nil, nil, - 96, nil, 239, 239, 239, 239, 239, nil, nil, 96, - 239, 96, nil, nil, nil, 96, nil, nil, 240, 240, - 240, 240, 240, 96, 96, 96, 240, 96, 96, 96, - 96, 96, 96, 96, 96, 96, 112, nil, nil, nil, - 112, nil, 112, nil, 112, 112, nil, nil, nil, 112, - 172, 172, 172, 172, 172, nil, nil, nil, 112, nil, - 112, nil, nil, nil, 112, 276, 276, 276, 276, 276, - nil, nil, nil, 112, nil, nil, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 114, nil, nil, nil, 114, - nil, 114, nil, 114, 114, nil, nil, nil, 114, 301, - 301, 301, 301, 301, nil, nil, nil, 114, nil, 114, - nil, nil, nil, 114, nil, nil, nil, nil, nil, nil, - nil, nil, 114, nil, nil, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 115, nil, nil, nil, 115, nil, - 115, nil, 115, 115, nil, nil, nil, 115, nil, nil, - nil, nil, nil, nil, nil, nil, 115, nil, 115, nil, - nil, nil, 115, nil, nil, nil, nil, nil, nil, nil, - 115, 115, nil, nil, 115, 115, 115, 115, 115, 115, - 115, 115, 115, 116, nil, nil, nil, 116, nil, 116, - nil, 116, 116, nil, nil, nil, 116, nil, nil, nil, - nil, nil, nil, nil, nil, 116, nil, 116, nil, nil, - nil, 116, nil, nil, nil, nil, nil, nil, nil, nil, - 116, nil, nil, 116, 116, 116, 116, 116, 116, 116, - 116, 116, 117, nil, nil, nil, 117, nil, 117, nil, - 117, 117, nil, nil, nil, 117, nil, nil, nil, nil, - nil, nil, nil, nil, 117, nil, 117, nil, nil, nil, - 117, nil, nil, nil, nil, nil, nil, nil, nil, 117, - nil, nil, 117, 117, 117, 117, 117, 117, 117, 117, - 117, 118, nil, nil, nil, 118, nil, 118, nil, 118, - 118, nil, nil, nil, 118, nil, nil, nil, nil, nil, - nil, nil, nil, 118, nil, 118, nil, nil, nil, 118, - nil, nil, nil, nil, nil, nil, nil, nil, 118, nil, - nil, 118, 118, 118, 118, 118, 118, 118, 118, 118, - 119, nil, nil, nil, 119, nil, 119, nil, 119, 119, - nil, nil, nil, 119, nil, nil, nil, nil, nil, nil, - nil, nil, 119, nil, 119, nil, nil, nil, 119, nil, - nil, nil, nil, nil, nil, nil, nil, 119, nil, nil, - 119, 119, 119, 119, 119, 119, 119, 119, 119, 120, - nil, nil, nil, 120, nil, 120, nil, 120, 120, nil, - nil, nil, 120, nil, nil, nil, nil, nil, nil, nil, - nil, 120, nil, 120, nil, nil, nil, 120, nil, nil, - nil, nil, nil, nil, nil, nil, 120, nil, nil, 120, - 120, 120, 120, 120, 120, 120, 120, 120, 121, nil, - nil, nil, 121, nil, 121, nil, 121, 121, nil, nil, - nil, 121, nil, nil, nil, nil, nil, nil, nil, nil, - 121, nil, 121, nil, nil, nil, 121, nil, nil, nil, - nil, nil, nil, nil, nil, 121, nil, nil, 121, 121, - 121, 121, 121, 121, 121, 121, 121, 122, nil, nil, - nil, 122, nil, 122, nil, 122, 122, nil, nil, nil, - 122, nil, nil, nil, nil, nil, nil, nil, nil, 122, - nil, 122, nil, nil, nil, 122, nil, nil, nil, nil, - nil, nil, nil, nil, 122, nil, nil, 122, 122, 122, - 122, 122, 122, 122, 122, 122, 123, nil, nil, nil, - 123, nil, 123, nil, 123, 123, nil, nil, nil, 123, - nil, nil, nil, nil, nil, nil, nil, nil, 123, nil, - 123, nil, nil, nil, 123, nil, nil, nil, nil, nil, - nil, nil, nil, 123, nil, nil, 123, 123, 123, 123, - 123, 123, 123, 123, 123, 124, nil, nil, nil, 124, - nil, 124, nil, 124, 124, nil, nil, nil, 124, 124, - nil, nil, nil, nil, nil, nil, nil, 124, nil, 124, - nil, nil, nil, 124, nil, nil, nil, nil, nil, nil, - nil, 124, 124, nil, nil, 124, 124, 124, 124, 124, - 124, 124, 124, 124, 130, nil, nil, nil, 130, nil, - 130, nil, 130, 130, nil, nil, nil, 130, nil, nil, - nil, nil, nil, nil, nil, nil, 130, nil, 130, nil, - nil, nil, 130, nil, nil, nil, nil, nil, nil, nil, - nil, 130, nil, nil, 130, 130, 130, 130, 130, 130, - 130, 130, 130, 137, nil, nil, nil, 137, nil, 137, - nil, 137, 137, nil, nil, nil, 137, nil, nil, nil, - nil, nil, nil, nil, nil, 137, nil, 137, nil, nil, - nil, 137, nil, nil, nil, nil, nil, nil, nil, 137, - 137, nil, nil, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 143, nil, nil, nil, 143, nil, 143, nil, - 143, 143, nil, nil, nil, 143, nil, nil, nil, nil, - nil, nil, nil, nil, 143, nil, 143, nil, nil, nil, - 143, nil, nil, nil, nil, nil, nil, nil, nil, 143, - nil, nil, 143, 143, 143, 143, 143, 143, 143, 143, - 143, 144, nil, nil, nil, 144, nil, 144, nil, 144, - 144, nil, nil, nil, 144, nil, nil, nil, nil, nil, - nil, nil, nil, 144, nil, 144, nil, nil, nil, 144, - nil, nil, nil, nil, nil, nil, nil, nil, 144, nil, - nil, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 145, nil, nil, nil, 145, nil, 145, nil, 145, 145, - nil, nil, nil, 145, nil, nil, nil, nil, nil, nil, - nil, nil, 145, nil, 145, nil, nil, nil, 145, nil, - nil, nil, nil, nil, nil, nil, nil, 145, nil, nil, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 146, - nil, nil, nil, 146, nil, 146, nil, 146, 146, nil, - nil, nil, 146, nil, nil, nil, nil, nil, nil, nil, - nil, 146, nil, 146, nil, nil, nil, 146, nil, nil, - nil, nil, nil, nil, nil, nil, 146, nil, nil, 146, - 146, 146, 146, 146, 146, 146, 146, 146, 147, nil, - nil, nil, 147, nil, 147, nil, 147, 147, nil, nil, - nil, 147, nil, nil, nil, nil, nil, nil, nil, nil, - 147, nil, 147, nil, nil, nil, 147, nil, nil, nil, - nil, nil, nil, nil, nil, 147, nil, nil, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 148, nil, nil, - nil, 148, nil, 148, nil, 148, 148, nil, nil, nil, - 148, nil, nil, nil, nil, nil, nil, nil, nil, 148, - nil, 148, nil, nil, nil, 148, nil, nil, nil, nil, - nil, nil, nil, nil, 148, nil, nil, 148, 148, 148, - 148, 148, 148, 148, 148, 148, 149, nil, nil, nil, - 149, nil, 149, nil, 149, 149, nil, nil, nil, 149, - nil, nil, nil, nil, nil, nil, nil, nil, 149, nil, - 149, nil, nil, nil, 149, nil, nil, nil, nil, nil, - nil, nil, nil, 149, nil, nil, 149, 149, 149, 149, - 149, 149, 149, 149, 149, 150, nil, nil, nil, 150, - nil, 150, nil, 150, 150, nil, nil, nil, 150, nil, - nil, nil, nil, nil, nil, nil, nil, 150, nil, 150, - nil, nil, nil, 150, nil, nil, nil, nil, nil, nil, - nil, nil, 150, nil, nil, 150, 150, 150, 150, 150, - 150, 150, 150, 150, 151, nil, nil, nil, 151, nil, - 151, nil, 151, 151, nil, nil, nil, 151, nil, nil, - nil, nil, nil, nil, nil, nil, 151, nil, 151, nil, - nil, nil, 151, nil, nil, nil, nil, nil, nil, nil, - nil, 151, nil, nil, 151, 151, 151, 151, 151, 151, - 151, 151, 151, 152, nil, nil, nil, 152, nil, 152, - nil, 152, 152, nil, nil, nil, 152, nil, nil, nil, - nil, nil, nil, nil, nil, 152, nil, 152, nil, nil, - nil, 152, nil, nil, nil, nil, nil, nil, nil, nil, - 152, nil, nil, 152, 152, 152, 152, 152, 152, 152, - 152, 152, 153, nil, nil, nil, 153, nil, 153, nil, - 153, 153, nil, nil, nil, 153, nil, nil, nil, nil, - nil, nil, nil, nil, 153, nil, 153, nil, nil, nil, - 153, nil, nil, nil, nil, nil, nil, nil, nil, 153, - nil, nil, 153, 153, 153, 153, 153, 153, 153, 153, - 153, 154, nil, nil, nil, 154, nil, 154, nil, 154, - 154, nil, nil, nil, 154, nil, nil, nil, nil, nil, - nil, nil, nil, 154, nil, 154, nil, nil, nil, 154, - nil, nil, nil, nil, nil, nil, nil, nil, 154, nil, - nil, 154, 154, 154, 154, 154, 154, 154, 154, 154, - 155, nil, nil, nil, 155, nil, 155, nil, 155, 155, - nil, nil, nil, 155, nil, nil, nil, nil, nil, nil, - nil, nil, 155, nil, 155, nil, nil, nil, 155, nil, - nil, nil, nil, nil, nil, nil, nil, 155, nil, nil, - 155, 155, 155, 155, 155, 155, 155, 155, 155, 156, - nil, nil, nil, 156, nil, 156, nil, 156, 156, nil, - nil, nil, 156, nil, nil, nil, nil, nil, nil, nil, - nil, 156, nil, 156, nil, nil, nil, 156, nil, nil, - nil, nil, nil, nil, nil, nil, 156, nil, nil, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 157, nil, - nil, nil, 157, nil, 157, nil, 157, 157, nil, nil, - nil, 157, nil, nil, nil, nil, nil, nil, nil, nil, - 157, nil, 157, nil, nil, nil, 157, nil, nil, nil, - nil, nil, nil, nil, nil, 157, nil, nil, 157, 157, - 157, 157, 157, 157, 157, 157, 157, 158, nil, nil, - nil, 158, nil, 158, nil, 158, 158, nil, nil, nil, - 158, nil, nil, nil, nil, nil, nil, nil, nil, 158, - nil, 158, nil, nil, nil, 158, nil, nil, nil, nil, - nil, nil, nil, nil, 158, nil, nil, 158, 158, 158, - 158, 158, 158, 158, 158, 158, 159, nil, nil, nil, - 159, nil, 159, nil, 159, 159, nil, nil, nil, 159, - nil, nil, nil, nil, nil, nil, nil, nil, 159, nil, - 159, nil, nil, nil, 159, nil, nil, nil, nil, nil, - nil, nil, nil, 159, nil, nil, 159, 159, 159, 159, - 159, 159, 159, 159, 159, 160, nil, nil, nil, 160, - nil, 160, nil, 160, 160, nil, nil, nil, 160, nil, - nil, nil, nil, nil, nil, nil, nil, 160, nil, 160, - nil, nil, nil, 160, nil, nil, nil, nil, nil, nil, - nil, nil, 160, nil, nil, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 161, nil, nil, nil, 161, nil, - 161, nil, 161, 161, nil, nil, nil, 161, nil, nil, - nil, nil, nil, nil, nil, nil, 161, nil, 161, nil, - nil, nil, 161, nil, nil, nil, nil, nil, nil, nil, - nil, 161, nil, nil, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 162, nil, nil, nil, 162, nil, 162, - nil, 162, 162, nil, nil, nil, 162, nil, nil, nil, - nil, nil, nil, nil, nil, 162, nil, 162, nil, nil, - nil, 162, nil, nil, nil, nil, nil, nil, nil, nil, - 162, nil, nil, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 163, nil, nil, nil, 163, nil, 163, nil, - 163, 163, nil, nil, nil, 163, nil, nil, nil, nil, - nil, nil, nil, nil, 163, nil, 163, nil, nil, nil, - 163, nil, nil, nil, nil, nil, nil, nil, nil, 163, - nil, nil, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 164, nil, nil, nil, 164, nil, 164, nil, 164, - 164, nil, nil, nil, 164, nil, nil, nil, nil, nil, - nil, nil, nil, 164, nil, 164, nil, nil, nil, 164, - nil, nil, nil, nil, nil, nil, nil, nil, 164, nil, - nil, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 165, nil, nil, nil, 165, nil, 165, nil, 165, 165, - nil, nil, nil, 165, nil, nil, nil, nil, nil, nil, - nil, nil, 165, nil, 165, nil, nil, nil, 165, nil, - nil, nil, nil, nil, nil, nil, nil, 165, nil, nil, - 165, 165, 165, 165, 165, 165, 165, 165, 165, 166, - nil, nil, nil, 166, nil, 166, nil, 166, 166, nil, - nil, nil, 166, nil, nil, nil, nil, nil, nil, nil, - nil, 166, nil, 166, nil, nil, nil, 166, nil, nil, - nil, nil, nil, nil, nil, nil, 166, nil, nil, 166, - 166, 166, 166, 166, 166, 166, 166, 166, 192, nil, - nil, nil, 192, nil, 192, nil, 192, 192, nil, nil, - nil, 192, nil, nil, nil, nil, nil, nil, nil, nil, - 192, nil, 192, nil, nil, nil, 192, nil, nil, nil, - nil, nil, nil, nil, nil, 192, nil, nil, 192, 192, - 192, 192, 192, 192, 192, 192, 192, 195, nil, nil, - nil, 195, nil, 195, nil, 195, 195, nil, nil, nil, - 195, nil, nil, nil, nil, nil, nil, nil, nil, 195, - nil, 195, nil, nil, nil, 195, nil, nil, nil, nil, - nil, nil, nil, nil, 195, nil, nil, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 253, nil, nil, nil, - 253, nil, 253, nil, 253, 253, nil, nil, nil, 253, - nil, nil, nil, nil, nil, nil, nil, nil, 253, nil, - 253, nil, nil, nil, 253, nil, nil, nil, nil, nil, - nil, nil, 253, 253, nil, nil, 253, 253, 253, 253, - 253, 253, 253, 253, 253, 254, nil, nil, nil, 254, - nil, 254, nil, 254, 254, nil, nil, nil, 254, nil, - nil, nil, nil, nil, nil, nil, nil, 254, nil, 254, - nil, nil, nil, 254, nil, nil, nil, nil, nil, nil, - nil, 254, 254, nil, nil, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 255, nil, nil, nil, 255, nil, - 255, nil, 255, 255, nil, nil, nil, 255, nil, nil, - nil, nil, nil, nil, nil, nil, 255, nil, 255, nil, - nil, nil, 255, nil, nil, nil, nil, nil, nil, nil, - 255, 255, nil, nil, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 258, nil, nil, nil, 258, nil, 258, - nil, 258, 258, nil, nil, nil, 258, nil, nil, nil, - nil, nil, nil, nil, nil, 258, nil, 258, nil, nil, - nil, 258, nil, nil, nil, nil, nil, nil, nil, 258, - 258, nil, nil, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 260, nil, nil, nil, 260, nil, 260, nil, - 260, 260, nil, nil, nil, 260, nil, nil, nil, nil, - nil, nil, nil, nil, 260, nil, 260, nil, nil, nil, - 260, nil, nil, nil, nil, nil, nil, nil, nil, 260, - nil, nil, 260, 260, 260, 260, 260, 260, 260, 260, - 260, 262, nil, nil, nil, 262, nil, 262, nil, 262, - 262, nil, nil, nil, 262, nil, nil, nil, nil, nil, - nil, nil, nil, 262, nil, 262, nil, nil, nil, 262, - nil, nil, nil, nil, nil, nil, nil, nil, 262, nil, - nil, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 267, nil, nil, nil, 267, nil, 267, nil, 267, 267, - nil, nil, nil, 267, nil, nil, nil, nil, nil, nil, - nil, nil, 267, nil, 267, nil, nil, nil, 267, nil, - nil, nil, nil, nil, nil, nil, 267, 267, nil, nil, - 267, 267, 267, 267, 267, 267, 267, 267, 267, 268, - nil, nil, nil, 268, nil, 268, nil, 268, 268, nil, - nil, nil, 268, nil, nil, nil, nil, nil, nil, nil, - nil, 268, nil, 268, nil, nil, nil, 268, nil, nil, - nil, nil, nil, nil, nil, 268, 268, nil, nil, 268, - 268, 268, 268, 268, 268, 268, 268, 268, 49, 49, - 49, 49, 49, 49, 49, 49, 49, 79, 79, 79, - 79, 79, 79, 79, 79, 79, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, nil, nil, nil, - 241, nil, nil, nil, 49, 49, nil, nil, nil, 49, - nil, nil, nil, 79, 79, nil, nil, nil, 79, 76, - 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, - 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, - 76, 76, nil, nil, nil, 76, nil, nil, nil, nil, - nil, nil, nil, 76, 135, 135, 135, 135, 135, 135, - 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, - 135, 135, 135, 135, 135, 135, 135, nil, nil, nil, - 135, nil, nil, nil, nil, nil, nil, nil, 135, 264, - 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, nil, nil, nil, 264, nil, nil, nil, nil, - nil, nil, nil, 264, 285, 285, 285, 285, 285, 285, - 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, - 285, 285, 285, 285, 285, 285, 285, nil, nil, nil, - 285, nil, nil, nil, nil, nil, nil, nil, 285, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, nil, nil, nil, 168, nil, nil, nil, nil, - nil, nil, 168, 194, 194, 194, 194, 194, 194, 194, - 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, - 194, 194, 194, 194, 194, 194, nil, nil, nil, 194, - nil, nil, nil, nil, nil, nil, 194, 196, 196, 196, - 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, - 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, - nil, nil, nil, 196, nil, nil, nil, nil, nil, nil, - 196, 261, 261, 261, 261, 261, 261, 261, 261, 261, - 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, - 261, 261, 261, 261, nil, nil, nil, 261, nil, nil, - nil, nil, nil, nil, 261, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, nil, nil, - nil, 287, 0, 0, 0, 0, 0, nil, 287, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, nil, - 0, 0, 0, 0, nil, 0, nil, 0, 3, 3, - 3, 3, 3, nil, 0, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, nil, 3, 3, 3, 3, - nil, 3, nil, 3, 43, 43, 43, nil, nil, nil, - 3, 43, 43, 43, 43, 43, 43, 43, 43, 43, - 43, 43, 43, 43, 43, 43, nil, 43, nil, 43, - 47, 47, 47, nil, nil, nil, 43, 47, 47, 47, - 47, 47, 47, 47, 47, 47, 47, nil, 47, 47, - 47, 47, nil, 47, nil, 47, 108, 108, 108, nil, - nil, nil, 47, 108, 108, 108, 108, 108, 108, 108, - 108, 108, 108, nil, 108, 108, 108, 108, nil, 108, - nil, 108, 263, 263, 263, nil, nil, nil, 108, 263, - 263, 263, 263, 263, 263, 263, 263, 263, 263, nil, - 263, 263, 263, 263, nil, 263, nil, 263, 265, 265, - 265, nil, nil, nil, 263, 265, 265, 265, 265, 265, - 265, 265, 265, 265, 265, nil, 265, 265, 265, 265, - nil, 265, nil, 265, 286, 286, 286, nil, nil, nil, - 265, 286, 286, 286, 286, 286, 286, 286, 286, 286, - 286, nil, 286, 286, 286, 286, nil, 286, nil, 286, - 299, 299, 299, nil, nil, nil, 286, 299, 299, 299, - 299, 299, 299, 299, 299, 299, 299, nil, 299, 299, - 299, 299, nil, 299, nil, 299, 300, 300, 300, nil, - nil, nil, 299, 300, 300, 300, 300, 300, 300, 300, - 300, 300, 300, nil, 300, 300, 300, 300, nil, 300, - nil, 300, 306, 306, 306, nil, nil, nil, 300, 306, - 306, 306, 306, 306, 306, 306, 306, 306, 306, nil, - 306, 306, 306, 306, nil, 306, nil, 306, nil, nil, - nil, nil, nil, nil, 306, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, nil, nil, - nil, 180, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 197, 197, 197, 197, nil, nil, nil, 197, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, nil, nil, nil, 199, 200, 200, 200, 200, - 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, - 200, 200, 200, 200, 200, 200, 200, 200, 200, nil, - nil, nil, 200, 201, 201, 201, 201, 201, 201, 201, - 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, - 201, 201, 201, 201, 201, 201, nil, nil, nil, 201, - 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, - 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, - 202, 202, 202, nil, nil, nil, 202, 203, 203, 203, - 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, - 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, - nil, nil, nil, 203, 204, 204, 204, 204, 204, 204, - 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, - 204, 204, 204, 204, 204, 204, 204, nil, nil, nil, - 204, 205, 205, 205, 205, 205, 205, 205, 205, 205, - 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, - 205, 205, 205, 205, nil, nil, nil, 205, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, nil, nil, nil, 206, 209, 209, 209, 209, 209, - 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, - 209, 209, 209, 209, 209, 209, 209, 209, nil, nil, - nil, 209, 222, 222, 222, 222, 222, 222, 222, 222, - 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, - 222, 222, 222, 222, 222, nil, nil, nil, 222, 277, - 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, - 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, - 277, 277, nil, nil, nil, 277, 279, 279, 279, 279, - 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, - 279, 279, 279, 279, 279, 279, 279, 279, 279, nil, - nil, nil, 279, 281, 281, 281, 281, 281, 281, 281, - 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, - 281, 281, 281, 281, 281, 281, nil, nil, nil, 281, - 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, - 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, - 291, 291, 291, nil, nil, nil, 291, 228, 228, 228, - 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, - 228, 228, 228, 228, 228, 228, 228, 228, 228, nil, - nil, nil, 228, 227, 227, 227, 227, 227, 227, 227, - 227, 227, 227, 227, 227, 227, 227, 227, 227, 227, - 227, 227, 227, 227, nil, nil, nil, 227, 242, 242, - 242, 242, 242, 242, 242, 242, 242, 242, 242, nil, - nil, nil, 242, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, nil, nil, nil, 243, 244, 244, - 244, 244, 244, 244, 244, 244, 244, 244, 244, nil, - nil, nil, 244, 245, 245, 245, 245, 245, 245, 245, - 245, 245, 245, 245, nil, nil, nil, 245, 246, 246, - 246, 246, 246, 246, 246, 246, 246, 246, 246, nil, - nil, nil, 246, 247, 247, 247, 247, 247, 247, 247, - 247, 247, 247, 247, nil, nil, nil, 247, 248, 248, - 248, 248, 248, 248, 248, 248, 248, 248, 248, nil, - nil, nil, 248, 249, 249, 249, 249, 249, 249, 249, - 249, 249, 249, 249, nil, nil, nil, 249, 250, 250, - 250, 250, 250, 250, 250, 250, 250, 250, 250, nil, - nil, nil, 250, 237, 237, 237, 237, 237, 237, 237, - 237, 237, 237, nil, nil, nil, 237, 236, 236, 236, - 236, 236, 236, 236, 236, 236, nil, nil, nil, 236 ] - -racc_action_pointer = [ - 3034, 33, nil, 3060, 109, nil, nil, nil, nil, nil, - -5, -28, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, -2, 9, -6, 13, 47, nil, -17, 50, 59, - 65, -8, -7, 3086, 68, -18, 80, 3112, 81, 2716, - 35, 74, 15, nil, nil, nil, 128, nil, nil, nil, - nil, nil, 88, nil, nil, nil, 42, nil, nil, 88, - 133, 72, nil, -28, 30, 93, 2758, 96, nil, 2725, - 91, 140, 189, 238, nil, nil, nil, nil, nil, nil, - 86, nil, nil, nil, 84, 129, 287, nil, nil, nil, - nil, nil, nil, nil, nil, 108, 105, nil, 3138, 52, - 129, 138, 336, 111, 385, 434, 483, 532, 581, 630, - 679, 728, 777, 826, 875, nil, nil, nil, nil, nil, - 924, 139, 19, nil, 31, 2793, nil, 973, 168, 131, - 133, nil, nil, 1022, 1071, 1120, 1169, 1218, 1267, 1316, - 1365, 1414, 1463, 1512, 1561, 1610, 1659, 1708, 1757, 1806, - 1855, 1904, 1953, 2002, 2051, 2100, 2149, nil, 2898, 143, - 145, 148, 309, nil, 122, 124, 125, 128, 140, nil, - 3354, nil, 156, 154, nil, nil, nil, 179, nil, nil, - nil, nil, 2198, 171, 2932, 2247, 2966, 3381, nil, 3408, - 3435, 3462, 3489, 3516, 3543, 3570, 3597, 187, nil, 3624, - 10, nil, 168, -11, nil, nil, 190, 181, 187, nil, - 172, nil, 3651, nil, nil, 195, 197, 3810, 3785, 66, - 115, 207, 209, 221, 232, 256, 3972, 3959, 269, 303, - 319, 2713, 3825, 3840, 3855, 3870, 3885, 3900, 3915, 3930, - 3945, nil, 201, 2296, 2345, 2394, 178, nil, 2443, nil, - 2492, 3000, 2541, 3164, 2828, 3190, nil, 2590, 2639, nil, - 217, nil, nil, 3, nil, nil, 324, 3678, nil, 3705, - nil, 3732, nil, nil, nil, 2863, 3216, 3034, 213, nil, - nil, 3759, nil, nil, nil, nil, 206, 101, nil, 3242, - 3268, 358, 234, nil, nil, nil, 3294, nil ] - -racc_action_default = [ - -2, -172, -1, -4, -172, -6, -8, -9, -10, -11, - -172, -172, -15, -16, -17, -18, -19, -20, -22, -23, - -24, -25, -26, -27, -28, -29, -30, -31, -32, -33, - -34, -172, -172, -172, -172, -172, -40, -172, -172, -172, - -172, -172, -172, -172, -172, -172, -172, -172, -172, -172, - -172, -172, -128, -160, -161, -162, -172, -3, -5, -7, - -21, -12, -172, -35, -36, -37, -172, -38, -39, -172, - -157, -159, -42, -172, -172, -172, -172, -172, -49, -108, - -172, -172, -172, -172, -93, -94, -105, -106, -107, -109, - -110, -111, -112, -113, -172, -172, -172, -163, -164, -165, - -166, -167, -169, -170, -171, -172, -172, -51, -154, -138, - -172, -172, -172, -172, -172, -172, -172, -172, -172, -172, - -172, -172, -172, -172, -172, -72, -74, -71, -73, -127, - -172, -172, -142, 308, -172, -172, -41, -172, -172, -172, - -172, -45, -47, -172, -172, -172, -172, -172, -172, -172, - -172, -172, -172, -172, -172, -172, -172, -172, -172, -172, - -172, -172, -172, -172, -172, -172, -172, -48, -172, -77, - -81, -82, -172, -129, -172, -172, -172, -126, -172, -133, - -143, -144, -146, -172, -148, -50, -153, -172, -134, -135, - -136, -137, -172, -172, -172, -172, -172, -59, -60, -61, - -62, -63, -64, -65, -66, -67, -68, -172, -70, -116, - -128, -117, -131, -172, -140, -141, -172, -172, -172, -150, - -152, -46, -155, -156, -158, -172, -172, -76, -78, -79, - -80, -83, -84, -85, -86, -87, -88, -89, -90, -91, - -92, -95, -96, -97, -98, -99, -100, -101, -102, -103, - -104, -75, -172, -172, -172, -172, -125, -132, -172, -147, - -172, -172, -172, -172, -172, -172, -69, -172, -172, -139, - -172, -14, -149, -172, -43, -44, -172, -118, -121, -119, - -122, -120, -123, -124, -145, -172, -172, -172, -55, -57, - -58, -114, -115, -130, -13, -151, -172, -138, -53, -172, - -172, -172, -172, -54, -56, -168, -172, -52 ] - -racc_goto_table = [ - 31, 187, 62, 31, 175, 33, 77, 183, 33, 178, - 35, 139, 140, 35, 207, 38, 216, 106, 38, 60, - 69, 1, 271, 59, 75, 58, 215, 49, 70, 61, - 49, 108, 70, 174, 2, 113, 110, 57, nil, nil, - nil, nil, nil, 31, nil, nil, nil, 31, 33, nil, - nil, nil, 33, 35, nil, nil, nil, 35, 38, nil, - nil, nil, 38, nil, nil, nil, nil, nil, nil, nil, - 49, nil, nil, nil, 49, 294, nil, 127, 128, 198, - nil, 252, 186, nil, nil, 173, 176, nil, 211, nil, - nil, nil, nil, nil, nil, nil, 108, nil, nil, nil, - nil, 223, 193, nil, nil, nil, nil, nil, 31, 188, - nil, nil, nil, 33, 189, 210, nil, nil, 35, 190, - 60, 224, 214, 38, 191, 219, nil, nil, nil, 70, - nil, nil, nil, nil, nil, 49, 49, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 295, nil, nil, 293, nil, - nil, nil, nil, nil, nil, 175, nil, nil, nil, 284, - 283, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 296, nil, nil, nil, 302, - nil, nil, nil, nil, 174, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 272, - 305, nil, nil, nil, nil, nil, nil, 278, 280, 282, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 292, 211, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 176, nil, nil, - nil, 288, nil, 290, nil, nil, nil, nil, nil, 210, - nil, nil, nil, 31, 219, 31, nil, nil, 33, nil, - 33, nil, nil, 35, 298, 35, nil, nil, 38, 76, - 38, nil, nil, nil, nil, nil, 31, 303, 304, nil, - 49, 33, 49, nil, 307, nil, 35, 188, nil, 31, - 31, 38, 189, 135, 33, 33, 31, 190, nil, 35, - 35, 33, 191, 49, 38, 38, 35, 168, 169, 170, - 171, 38, nil, nil, 49, nil, 49, 49, nil, nil, - nil, nil, nil, 49, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 194, - nil, 196, 197, 199, 200, 201, 202, 203, 204, 205, - 206, 209, nil, nil, nil, nil, nil, 213, nil, nil, - nil, nil, nil, nil, 222, nil, nil, nil, nil, nil, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 261, - nil, nil, 264, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 277, 279, 281, nil, nil, nil, nil, 285, nil, 287, - nil, nil, nil, nil, 291, 209 ] - -racc_goto_check = [ - 30, 39, 9, 30, 43, 31, 37, 53, 31, 49, - 32, 35, 35, 32, 41, 34, 10, 38, 34, 18, - 33, 1, 11, 5, 33, 4, 50, 40, 9, 5, - 40, 6, 9, 35, 2, 6, 9, 2, nil, nil, - nil, nil, nil, 30, nil, nil, nil, 30, 31, nil, - nil, nil, 31, 32, nil, nil, nil, 32, 34, nil, - nil, nil, 34, nil, nil, nil, nil, nil, nil, nil, - 40, nil, nil, nil, 40, 11, nil, 40, 40, 37, - nil, 43, 38, nil, nil, 9, 9, nil, 37, nil, - nil, nil, nil, nil, nil, nil, 6, nil, nil, nil, - nil, 37, 9, nil, nil, nil, nil, nil, 30, 30, - nil, nil, nil, 31, 31, 9, nil, nil, 32, 32, - 18, 33, 9, 34, 34, 9, nil, nil, nil, 9, - nil, nil, nil, nil, nil, 40, 40, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 10, nil, nil, 41, nil, - nil, nil, nil, nil, nil, 43, nil, nil, nil, 53, - 49, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 43, nil, nil, nil, 39, - nil, nil, nil, nil, 35, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 9, - 43, nil, nil, nil, nil, nil, nil, 37, 37, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 37, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 9, nil, nil, - nil, 6, nil, 6, nil, nil, nil, nil, nil, 9, - nil, nil, nil, 30, 9, 30, nil, nil, 31, nil, - 31, nil, nil, 32, 6, 32, nil, nil, 34, 36, - 34, nil, nil, nil, nil, nil, 30, 6, 6, nil, - 40, 31, 40, nil, 6, nil, 32, 30, nil, 30, - 30, 34, 31, 36, 31, 31, 30, 32, nil, 32, - 32, 31, 34, 40, 34, 34, 32, 36, 36, 36, - 36, 34, nil, nil, 40, nil, 40, 40, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 36, - nil, 36, 36, 36, 36, 36, 36, 36, 36, 36, - 36, 36, nil, nil, nil, nil, nil, 36, nil, nil, - nil, nil, nil, nil, 36, nil, nil, nil, nil, nil, - 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, - 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, - 36, 36, 36, 36, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 36, - nil, nil, 36, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 36, 36, 36, nil, nil, nil, nil, 36, nil, 36, - nil, nil, nil, nil, 36, 36 ] - -racc_goto_pointer = [ - nil, 21, 34, nil, 21, 19, -12, nil, nil, -9, - -118, -195, nil, nil, nil, nil, nil, nil, 15, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 0, 5, 10, -17, 15, -62, 237, -36, -26, -108, - 27, -110, nil, -91, nil, nil, nil, nil, nil, -86, - -106, nil, nil, -89, nil, nil ] - -racc_goto_default = [ - nil, nil, nil, 3, 5, 6, 7, 8, 9, 52, - nil, 25, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, - 86, 88, 85, nil, 84, 87, 180, 181, nil, nil, - 79, nil, 89, 90, 91, 92, 93, 212, 177, nil, - 129, 132, 182, nil, 220, 71 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 80, :_reduce_1, - 0, 80, :_reduce_2, - 2, 81, :_reduce_3, - 1, 81, :_reduce_4, - 2, 82, :_reduce_5, - 1, 82, :_reduce_6, - 2, 82, :_reduce_7, - 1, 82, :_reduce_8, - 1, 82, :_reduce_9, - 1, 85, :_reduce_10, - 1, 85, :_reduce_11, - 2, 83, :_reduce_12, - 6, 84, :_reduce_13, - 5, 84, :_reduce_14, - 1, 86, :_reduce_15, - 1, 86, :_reduce_16, - 1, 86, :_reduce_17, - 1, 86, :_reduce_18, - 1, 86, :_reduce_19, - 1, 86, :_reduce_20, - 2, 86, :_reduce_21, - 1, 86, :_reduce_22, - 1, 86, :_reduce_23, - 1, 86, :_reduce_24, - 1, 86, :_reduce_25, - 1, 86, :_reduce_26, - 1, 86, :_reduce_27, - 1, 86, :_reduce_28, - 1, 87, :_reduce_29, - 1, 87, :_reduce_30, - 1, 87, :_reduce_31, - 1, 87, :_reduce_32, - 1, 87, :_reduce_33, - 1, 87, :_reduce_34, - 2, 91, :_reduce_35, - 2, 92, :_reduce_36, - 2, 93, :_reduce_37, - 2, 94, :_reduce_38, - 2, 95, :_reduce_39, - 1, 96, :_reduce_40, - 3, 97, :_reduce_41, - 2, 100, :_reduce_42, - 5, 98, :_reduce_43, - 5, 99, :_reduce_44, - 3, 101, :_reduce_45, - 4, 102, :_reduce_46, - 3, 103, :_reduce_47, - 3, 103, :_reduce_48, - 2, 103, :_reduce_49, - 3, 90, :_reduce_50, - 2, 90, :_reduce_51, - 9, 104, :_reduce_52, - 6, 105, :_reduce_53, - 7, 105, :_reduce_54, - 5, 106, :_reduce_55, - 7, 106, :_reduce_56, - 5, 107, :_reduce_57, - 5, 108, :_reduce_58, - 3, 109, :_reduce_59, - 3, 109, :_reduce_60, - 3, 109, :_reduce_61, - 3, 109, :_reduce_62, - 3, 109, :_reduce_63, - 3, 109, :_reduce_64, - 3, 109, :_reduce_65, - 3, 109, :_reduce_66, - 3, 109, :_reduce_67, - 3, 109, :_reduce_68, - 4, 110, :_reduce_69, - 3, 110, :_reduce_70, - 2, 111, :_reduce_71, - 2, 111, :_reduce_72, - 2, 113, :_reduce_73, - 2, 113, :_reduce_74, - 3, 115, :_reduce_75, - 3, 115, :_reduce_76, - 2, 115, :_reduce_77, - 3, 115, :_reduce_78, - 3, 115, :_reduce_79, - 3, 115, :_reduce_80, - 2, 115, :_reduce_81, - 2, 115, :_reduce_82, - 3, 115, :_reduce_83, - 3, 115, :_reduce_84, - 3, 115, :_reduce_85, - 3, 115, :_reduce_86, - 3, 115, :_reduce_87, - 3, 115, :_reduce_88, - 3, 115, :_reduce_89, - 3, 115, :_reduce_90, - 3, 115, :_reduce_91, - 3, 115, :_reduce_92, - 1, 115, :_reduce_93, - 1, 115, :_reduce_94, - 3, 115, :_reduce_95, - 3, 115, :_reduce_96, - 3, 115, :_reduce_97, - 3, 115, :_reduce_98, - 3, 115, :_reduce_99, - 3, 115, :_reduce_100, - 3, 115, :_reduce_101, - 3, 115, :_reduce_102, - 3, 115, :_reduce_103, - 3, 115, :_reduce_104, - 1, 115, :_reduce_105, - 1, 115, :_reduce_106, - 1, 115, :_reduce_107, - 1, 115, :_reduce_108, - 1, 115, :_reduce_109, - 1, 115, :_reduce_110, - 1, 115, :_reduce_111, - 1, 115, :_reduce_112, - 1, 115, :_reduce_113, - 3, 126, :_reduce_114, - 3, 126, :_reduce_115, - 1, 126, :_reduce_116, - 1, 126, :_reduce_117, - 3, 127, :_reduce_118, - 3, 127, :_reduce_119, - 3, 127, :_reduce_120, - 3, 127, :_reduce_121, - 3, 127, :_reduce_122, - 3, 127, :_reduce_123, - 3, 128, :_reduce_124, - 2, 128, :_reduce_125, - 1, 128, :_reduce_126, - 2, 119, :_reduce_127, - 1, 119, :_reduce_128, - 2, 116, :_reduce_129, - 3, 120, :_reduce_130, - 1, 120, :_reduce_131, - 3, 125, :_reduce_132, - 2, 125, :_reduce_133, - 1, 118, :_reduce_134, - 1, 118, :_reduce_135, - 1, 118, :_reduce_136, - 1, 118, :_reduce_137, - 0, 118, :_reduce_138, - 3, 130, :_reduce_139, - 2, 130, :_reduce_140, - 2, 129, :_reduce_141, - 1, 129, :_reduce_142, - 1, 131, :_reduce_143, - 1, 131, :_reduce_144, - 3, 132, :_reduce_145, - 1, 132, :_reduce_146, - 3, 124, :_reduce_147, - 2, 124, :_reduce_148, - 2, 133, :_reduce_149, - 1, 133, :_reduce_150, - 3, 89, :_reduce_151, - 1, 89, :_reduce_152, - 2, 117, :_reduce_153, - 1, 117, :_reduce_154, - 3, 134, :_reduce_155, - 3, 134, :_reduce_156, - 1, 134, :_reduce_157, - 3, 112, :_reduce_158, - 1, 112, :_reduce_159, - 1, 88, :_reduce_160, - 1, 88, :_reduce_161, - 1, 88, :_reduce_162, - 1, 122, :_reduce_163, - 1, 122, :_reduce_164, - 1, 122, :_reduce_165, - 1, 122, :_reduce_166, - 1, 122, :_reduce_167, - 7, 121, :_reduce_168, - 1, 114, :_reduce_169, - 1, 114, :_reduce_170, - 1, 123, :_reduce_171 ] - -racc_reduce_n = 172 - -racc_shift_n = 308 - -racc_token_table = { - false => 0, - :error => 1, - :ASS_EQ => 2, - :ADD_EQ => 3, - :SUB_EQ => 4, - :MUL_EQ => 5, - :DIV_EQ => 6, - :MOD_EQ => 7, - :SLL_EQ => 8, - :SRA_EQ => 9, - :SRL_EQ => 10, - :OR => 11, - :AND => 12, - :CMP_LT => 13, - :CMP_GT => 14, - :CMP_EQ => 15, - :CMP_NE => 16, - :CMP_GE => 17, - :CMP_LE => 18, - :SUBSTR_EQ => 19, - :SUBSTR_NE => 20, - :REGEX_EQ => 21, - :REGEX_NE => 22, - :BIT_OR => 23, - :BIT_XOR => 24, - :AMPERSAND => 25, - :BIT_SRA => 26, - :BIT_SRL => 27, - :BIT_SLL => 28, - :ADD => 29, - :SUB => 30, - :MUL => 31, - :DIV => 32, - :MOD => 33, - :NOT => 34, - :UMINUS => 35, - :BIT_NOT => 36, - :EXP => 37, - :INCR => 38, - :DECR => 39, - :COMMENT => 40, - :EXPORT => 41, - :FUNCTION => 42, - :LPAREN => 43, - :RPAREN => 44, - :SEMICOLON => 45, - :BREAK => 46, - :CONTINUE => 47, - :GLOBAL => 48, - :IMPORT => 49, - :INCLUDE => 50, - :LOCAL => 51, - :REP => 52, - :RETURN => 53, - :LBRACE => 54, - :RBRACE => 55, - :FOR => 56, - :FOREACH => 57, - :IN => 58, - :IF => 59, - :ELSE => 60, - :REPEAT => 61, - :UNTIL => 62, - :WHILE => 63, - :COLON => 64, - :COMMA => 65, - :AT_SIGN => 66, - :LBRACK => 67, - :RBRACK => 68, - :PERIOD => 69, - :IDENT => 70, - :INT_DEC => 71, - :INT_HEX => 72, - :INT_OCT => 73, - :FALSE => 74, - :TRUE => 75, - :DATA => 76, - :STRING => 77, - :UNDEF => 78 } - -racc_nt_base = 79 - -racc_use_result_var = false - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "ASS_EQ", - "ADD_EQ", - "SUB_EQ", - "MUL_EQ", - "DIV_EQ", - "MOD_EQ", - "SLL_EQ", - "SRA_EQ", - "SRL_EQ", - "OR", - "AND", - "CMP_LT", - "CMP_GT", - "CMP_EQ", - "CMP_NE", - "CMP_GE", - "CMP_LE", - "SUBSTR_EQ", - "SUBSTR_NE", - "REGEX_EQ", - "REGEX_NE", - "BIT_OR", - "BIT_XOR", - "AMPERSAND", - "BIT_SRA", - "BIT_SRL", - "BIT_SLL", - "ADD", - "SUB", - "MUL", - "DIV", - "MOD", - "NOT", - "UMINUS", - "BIT_NOT", - "EXP", - "INCR", - "DECR", - "COMMENT", - "EXPORT", - "FUNCTION", - "LPAREN", - "RPAREN", - "SEMICOLON", - "BREAK", - "CONTINUE", - "GLOBAL", - "IMPORT", - "INCLUDE", - "LOCAL", - "REP", - "RETURN", - "LBRACE", - "RBRACE", - "FOR", - "FOREACH", - "IN", - "IF", - "ELSE", - "REPEAT", - "UNTIL", - "WHILE", - "COLON", - "COMMA", - "AT_SIGN", - "LBRACK", - "RBRACK", - "PERIOD", - "IDENT", - "INT_DEC", - "INT_HEX", - "INT_OCT", - "FALSE", - "TRUE", - "DATA", - "STRING", - "UNDEF", - "$start", - "start", - "roots", - "root", - "export", - "function", - "statement", - "simple", - "compound", - "ident", - "params", - "block", - "assign", - "break", - "call", - "continue", - "decr", - "empty", - "global", - "import", - "include", - "incr", - "local", - "rep", - "return", - "for", - "foreach", - "if", - "repeat", - "while", - "assign_exp", - "call_exp", - "decr_exp", - "var_decls", - "incr_exp", - "string", - "expr", - "ref", - "statements", - "field", - "lval", - "args", - "ip", - "int", - "undef", - "list_expr", - "array_expr", - "arg", - "kv_pair", - "kv_pairs", - "indexes", - "index", - "list_elem", - "list_elems", - "param", - "var_decl" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'nasl.y', 61) - def _reduce_1(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 63) - def _reduce_2(val, _values) - [] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 67) - def _reduce_3(val, _values) - [val[0]] + val[1] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 69) - def _reduce_4(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 73) - def _reduce_5(val, _values) - c(*val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 75) - def _reduce_6(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 77) - def _reduce_7(val, _values) - c(*val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 79) - def _reduce_8(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 81) - def _reduce_9(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 85) - def _reduce_10(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 87) - def _reduce_11(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 95) - def _reduce_12(val, _values) - n(:Export, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 99) - def _reduce_13(val, _values) - n(:Function, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 101) - def _reduce_14(val, _values) - n(:Function, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 105) - def _reduce_15(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 107) - def _reduce_16(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 109) - def _reduce_17(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 111) - def _reduce_18(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 113) - def _reduce_19(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 115) - def _reduce_20(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 117) - def _reduce_21(val, _values) - c(*val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 119) - def _reduce_22(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 121) - def _reduce_23(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 123) - def _reduce_24(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 125) - def _reduce_25(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 127) - def _reduce_26(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 129) - def _reduce_27(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 131) - def _reduce_28(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 135) - def _reduce_29(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 137) - def _reduce_30(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 139) - def _reduce_31(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 141) - def _reduce_32(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 143) - def _reduce_33(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 145) - def _reduce_34(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 153) - def _reduce_35(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 157) - def _reduce_36(val, _values) - n(:Break, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 161) - def _reduce_37(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 165) - def _reduce_38(val, _values) - n(:Continue, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 169) - def _reduce_39(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 173) - def _reduce_40(val, _values) - n(:Empty, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 177) - def _reduce_41(val, _values) - n(:Global, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 181) - def _reduce_42(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 185) - def _reduce_43(val, _values) - n(:Import, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 189) - def _reduce_44(val, _values) - n(:Include, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 193) - def _reduce_45(val, _values) - n(:Local, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 197) - def _reduce_46(val, _values) - n(:Repetition, *val[0..-1]) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 201) - def _reduce_47(val, _values) - n(:Return, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 203) - def _reduce_48(val, _values) - n(:Return, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 205) - def _reduce_49(val, _values) - n(:Return, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 213) - def _reduce_50(val, _values) - n(:Block, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 215) - def _reduce_51(val, _values) - n(:Block, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 219) - def _reduce_52(val, _values) - n(:For, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 223) - def _reduce_53(val, _values) - n(:Foreach, val[0], val[1], val[3], val[5]) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 225) - def _reduce_54(val, _values) - n(:Foreach, val[0], val[2], val[4], val[6]) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 229) - def _reduce_55(val, _values) - n(:If, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 231) - def _reduce_56(val, _values) - n(:If, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 235) - def _reduce_57(val, _values) - n(:Repeat, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 239) - def _reduce_58(val, _values) - n(:While, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 247) - def _reduce_59(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 249) - def _reduce_60(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 251) - def _reduce_61(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 253) - def _reduce_62(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 255) - def _reduce_63(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 257) - def _reduce_64(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 259) - def _reduce_65(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 261) - def _reduce_66(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 263) - def _reduce_67(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 265) - def _reduce_68(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 269) - def _reduce_69(val, _values) - n(:Call, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 271) - def _reduce_70(val, _values) - n(:Call, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 275) - def _reduce_71(val, _values) - n(:Decrement, val[0]) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 277) - def _reduce_72(val, _values) - n(:Decrement, val[0]) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 281) - def _reduce_73(val, _values) - n(:Increment, val[0]) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 283) - def _reduce_74(val, _values) - n(:Increment, val[0]) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 287) - def _reduce_75(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 289) - def _reduce_76(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 291) - def _reduce_77(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 293) - def _reduce_78(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 295) - def _reduce_79(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 297) - def _reduce_80(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 299) - def _reduce_81(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 301) - def _reduce_82(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 303) - def _reduce_83(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 305) - def _reduce_84(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 307) - def _reduce_85(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 309) - def _reduce_86(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 311) - def _reduce_87(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 313) - def _reduce_88(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 315) - def _reduce_89(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 317) - def _reduce_90(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 319) - def _reduce_91(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 321) - def _reduce_92(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 323) - def _reduce_93(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 325) - def _reduce_94(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 327) - def _reduce_95(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 329) - def _reduce_96(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 331) - def _reduce_97(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 333) - def _reduce_98(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 335) - def _reduce_99(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 337) - def _reduce_100(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 339) - def _reduce_101(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 341) - def _reduce_102(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 343) - def _reduce_103(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 345) - def _reduce_104(val, _values) - n(:Expression, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 347) - def _reduce_105(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 349) - def _reduce_106(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 351) - def _reduce_107(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 353) - def _reduce_108(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 355) - def _reduce_109(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 357) - def _reduce_110(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 359) - def _reduce_111(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 361) - def _reduce_112(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 363) - def _reduce_113(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 371) - def _reduce_114(val, _values) - n(:Argument, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 373) - def _reduce_115(val, _values) - n(:Argument, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 375) - def _reduce_116(val, _values) - n(:Argument, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 377) - def _reduce_117(val, _values) - n(:Argument, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 381) - def _reduce_118(val, _values) - n(:KeyValuePair, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 383) - def _reduce_119(val, _values) - n(:KeyValuePair, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 385) - def _reduce_120(val, _values) - n(:KeyValuePair, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 387) - def _reduce_121(val, _values) - n(:KeyValuePair, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 389) - def _reduce_122(val, _values) - n(:KeyValuePair, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 391) - def _reduce_123(val, _values) - n(:KeyValuePair, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 395) - def _reduce_124(val, _values) - [val[0]] + val[2] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 397) - def _reduce_125(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 399) - def _reduce_126(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 403) - def _reduce_127(val, _values) - n(:Lvalue, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 405) - def _reduce_128(val, _values) - n(:Lvalue, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 409) - def _reduce_129(val, _values) - n(:Reference, val[1]) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 417) - def _reduce_130(val, _values) - [val[0]] + val[2] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 419) - def _reduce_131(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 423) - def _reduce_132(val, _values) - n(:Array, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 425) - def _reduce_133(val, _values) - n(:Array, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 429) - def _reduce_134(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 431) - def _reduce_135(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 433) - def _reduce_136(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 435) - def _reduce_137(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 437) - def _reduce_138(val, _values) - nil - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 441) - def _reduce_139(val, _values) - val[1] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 443) - def _reduce_140(val, _values) - val[1] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 447) - def _reduce_141(val, _values) - [val[0]] + val[1] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 449) - def _reduce_142(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 453) - def _reduce_143(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 455) - def _reduce_144(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 459) - def _reduce_145(val, _values) - [val[0]] + val[2] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 461) - def _reduce_146(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 465) - def _reduce_147(val, _values) - n(:List, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 467) - def _reduce_148(val, _values) - n(:List, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 471) - def _reduce_149(val, _values) - n(:Parameter, val[1], 'reference') - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 473) - def _reduce_150(val, _values) - n(:Parameter, val[0], 'value') - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 477) - def _reduce_151(val, _values) - [val[0]] + val[2] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 479) - def _reduce_152(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 483) - def _reduce_153(val, _values) - [val[0]] + val[1] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 485) - def _reduce_154(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 489) - def _reduce_155(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 491) - def _reduce_156(val, _values) - n(:Assignment, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 493) - def _reduce_157(val, _values) - val[0] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 497) - def _reduce_158(val, _values) - [val[0]] + val[2] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 499) - def _reduce_159(val, _values) - [val[0]] - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 507) - def _reduce_160(val, _values) - n(:Identifier, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 509) - def _reduce_161(val, _values) - n(:Identifier, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 511) - def _reduce_162(val, _values) - n(:Identifier, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 515) - def _reduce_163(val, _values) - n(:Integer, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 517) - def _reduce_164(val, _values) - n(:Integer, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 519) - def _reduce_165(val, _values) - n(:Integer, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 521) - def _reduce_166(val, _values) - n(:Integer, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 523) - def _reduce_167(val, _values) - n(:Integer, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 527) - def _reduce_168(val, _values) - n(:Ip, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 530) - def _reduce_169(val, _values) - n(:String, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 532) - def _reduce_170(val, _values) - n(:String, *val) - end -.,., - -module_eval(<<'.,.,', 'nasl.y', 536) - def _reduce_171(val, _values) - n(:Undefined, *val) - end -.,., - -def _reduce_none(val, _values) - val[0] -end - - end # class Grammar -end # module Nasl - - diff --git a/test/racc/regress/nokogiri-css b/test/racc/regress/nokogiri-css deleted file mode 100644 index bc2faf8702..0000000000 --- a/test/racc/regress/nokogiri-css +++ /dev/null @@ -1,836 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - - -require 'nokogiri/css/parser_extras' -module Nokogiri - module CSS - class Parser < Racc::Parser -##### State transition tables begin ### - -racc_action_table = [ - 24, 93, 56, 57, 33, 55, 94, 23, 24, 22, - 12, 93, 33, 27, 35, 52, 44, 22, -23, 25, - 45, 98, 23, 33, 26, 18, 20, 25, 27, -23, - 23, 24, 26, 18, 20, 33, 27, 11, 39, 24, - 22, 23, 74, 33, 18, 91, 90, 27, 22, 12, - 25, 24, -23, 23, 85, 26, 18, 20, 25, 27, - 66, 23, 24, 26, 18, 20, 33, 27, 101, 100, - 51, 22, 86, 88, 24, 26, 56, 87, 89, 60, - 92, 25, 95, 46, 23, 49, 26, 18, 20, 90, - 27, 33, 33, 51, 96, 99, 56, 58, 26, 60, - 102, 103, 33, 33, 33, 93, 39, 39, 105, 23, - 23, 108, 18, 18, 20, 27, 27, 39, 39, 39, - 23, 23, 23, 18, 18, 18, 27, 27, 27, 33, - 33, 56, 87, 109, 60, 22, 56, 87, nil, 60, - 33, nil, nil, nil, 39, 39, nil, 23, 23, nil, - 18, 18, 20, 27, 27, 39, 82, 83, 23, 56, - 87, 18, 60, nil, 27, 82, 83, 78, 79, 80, - nil, 81, nil, nil, nil, 77, 78, 79, 80, nil, - 81, 4, 5, 10, 77, 4, 5, 43, nil, nil, - nil, 6, nil, 8, 7, 6, nil, 8, 7, 4, - 5, 10, nil, nil, nil, nil, nil, nil, nil, 6, - nil, 8, 7 ] - -racc_action_check = [ - 3, 58, 24, 24, 3, 24, 57, 15, 9, 3, - 64, 57, 9, 15, 11, 24, 18, 9, 58, 3, - 21, 64, 3, 14, 3, 3, 3, 9, 3, 22, - 9, 12, 9, 9, 9, 12, 9, 1, 14, 42, - 12, 14, 45, 42, 14, 55, 55, 14, 42, 1, - 12, 27, 46, 12, 49, 12, 12, 12, 42, 12, - 27, 42, 43, 42, 42, 42, 43, 42, 76, 76, - 27, 43, 50, 53, 23, 27, 51, 51, 54, 51, - 56, 43, 59, 23, 43, 23, 43, 43, 43, 60, - 43, 28, 25, 23, 61, 75, 25, 25, 23, 25, - 84, 86, 29, 30, 31, 87, 28, 25, 91, 28, - 25, 94, 28, 25, 25, 28, 25, 29, 30, 31, - 29, 30, 31, 29, 30, 31, 29, 30, 31, 32, - 39, 90, 90, 105, 90, 39, 92, 92, nil, 92, - 62, nil, nil, nil, 32, 39, nil, 32, 39, nil, - 32, 39, 39, 32, 39, 62, 47, 47, 62, 93, - 93, 62, 93, nil, 62, 48, 48, 47, 47, 47, - nil, 47, nil, nil, nil, 47, 48, 48, 48, nil, - 48, 0, 0, 0, 48, 17, 17, 17, nil, nil, - nil, 0, nil, 0, 0, 17, nil, 17, 17, 26, - 26, 26, nil, nil, nil, nil, nil, nil, nil, 26, - nil, 26, 26 ] - -racc_action_pointer = [ - 174, 37, nil, -2, nil, nil, nil, nil, nil, 6, - nil, 14, 29, nil, 17, -17, nil, 178, 5, nil, - nil, -9, 0, 72, -8, 86, 192, 49, 85, 96, - 97, 98, 123, nil, nil, nil, nil, nil, nil, 124, - nil, nil, 37, 60, nil, 31, 23, 153, 162, 29, - 43, 66, nil, 50, 55, 34, 68, -1, -11, 59, - 77, 71, 134, nil, -2, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 70, 58, nil, nil, nil, - nil, nil, nil, nil, 75, nil, 90, 93, nil, nil, - 121, 101, 126, 149, 98, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 120, nil, nil, nil, nil ] - -racc_action_default = [ - -74, -75, -2, -24, -4, -5, -6, -7, -8, -24, - -73, -75, -24, -3, -47, -10, -13, -17, -75, -19, - -20, -75, -22, -24, -75, -24, -74, -75, -53, -54, - -55, -56, -57, -58, -14, 110, -1, -9, -46, -24, - -11, -12, -24, -24, -18, -75, -29, -61, -61, -75, - -75, -75, -30, -75, -75, -38, -39, -40, -22, -75, - -38, -75, -70, -72, -75, -44, -45, -48, -49, -50, - -51, -52, -15, -16, -21, -75, -75, -62, -63, -64, - -65, -66, -67, -68, -75, -27, -75, -40, -31, -32, - -75, -43, -75, -75, -75, -33, -69, -71, -34, -25, - -59, -60, -26, -28, -35, -75, -36, -37, -42, -41 ] - -racc_goto_table = [ - 53, 38, 13, 1, 42, 48, 62, 37, 34, 65, - 40, 36, 63, 75, 84, 67, 68, 69, 70, 71, - 62, 41, 50, 47, 54, nil, 63, nil, nil, 64, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 72, 73, nil, nil, nil, nil, nil, nil, 97, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 104, nil, 106, 107 ] - -racc_goto_check = [ - 18, 12, 2, 1, 5, 9, 7, 8, 2, 9, - 10, 2, 12, 17, 17, 12, 12, 12, 12, 12, - 7, 11, 15, 16, 19, nil, 12, nil, nil, 1, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 2, 2, nil, nil, nil, nil, nil, nil, 12, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 18, nil, 18, 18 ] - -racc_goto_pointer = [ - nil, 3, -1, nil, nil, -13, nil, -19, -7, -18, - -5, 6, -13, nil, nil, -1, 0, -34, -24, 0, - nil, nil, nil, nil ] - -racc_goto_default = [ - nil, nil, nil, 2, 3, 9, 17, 14, nil, 15, - 31, 30, 16, 29, 19, 21, nil, nil, 59, nil, - 28, 32, 76, 61 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 3, 32, :_reduce_1, - 1, 32, :_reduce_2, - 2, 32, :_reduce_3, - 1, 36, :_reduce_4, - 1, 36, :_reduce_5, - 1, 36, :_reduce_6, - 1, 36, :_reduce_7, - 1, 36, :_reduce_8, - 2, 37, :_reduce_9, - 1, 37, :_reduce_none, - 2, 37, :_reduce_11, - 2, 37, :_reduce_12, - 1, 37, :_reduce_13, - 2, 34, :_reduce_14, - 3, 33, :_reduce_15, - 3, 33, :_reduce_16, - 1, 33, :_reduce_none, - 2, 44, :_reduce_18, - 1, 38, :_reduce_none, - 1, 38, :_reduce_20, - 3, 45, :_reduce_21, - 1, 45, :_reduce_22, - 1, 46, :_reduce_23, - 0, 46, :_reduce_none, - 4, 42, :_reduce_25, - 4, 42, :_reduce_26, - 3, 42, :_reduce_27, - 3, 47, :_reduce_28, - 1, 47, :_reduce_29, - 2, 40, :_reduce_30, - 3, 40, :_reduce_31, - 3, 40, :_reduce_32, - 3, 40, :_reduce_33, - 3, 40, :_reduce_34, - 3, 49, :_reduce_35, - 3, 49, :_reduce_36, - 3, 49, :_reduce_37, - 1, 49, :_reduce_none, - 1, 49, :_reduce_none, - 1, 49, :_reduce_40, - 4, 50, :_reduce_41, - 3, 50, :_reduce_42, - 2, 50, :_reduce_43, - 2, 41, :_reduce_44, - 2, 41, :_reduce_45, - 1, 39, :_reduce_none, - 0, 39, :_reduce_none, - 2, 43, :_reduce_48, - 2, 43, :_reduce_49, - 2, 43, :_reduce_50, - 2, 43, :_reduce_51, - 2, 43, :_reduce_52, - 1, 43, :_reduce_none, - 1, 43, :_reduce_none, - 1, 43, :_reduce_none, - 1, 43, :_reduce_none, - 1, 43, :_reduce_none, - 1, 51, :_reduce_58, - 2, 48, :_reduce_59, - 2, 48, :_reduce_60, - 0, 48, :_reduce_none, - 1, 53, :_reduce_62, - 1, 53, :_reduce_63, - 1, 53, :_reduce_64, - 1, 53, :_reduce_65, - 1, 53, :_reduce_66, - 1, 53, :_reduce_67, - 1, 53, :_reduce_68, - 3, 52, :_reduce_69, - 1, 54, :_reduce_none, - 2, 54, :_reduce_none, - 1, 54, :_reduce_none, - 1, 35, :_reduce_none, - 0, 35, :_reduce_none ] - -racc_reduce_n = 75 - -racc_shift_n = 110 - -racc_token_table = { - false => 0, - :error => 1, - :FUNCTION => 2, - :INCLUDES => 3, - :DASHMATCH => 4, - :LBRACE => 5, - :HASH => 6, - :PLUS => 7, - :GREATER => 8, - :S => 9, - :STRING => 10, - :IDENT => 11, - :COMMA => 12, - :NUMBER => 13, - :PREFIXMATCH => 14, - :SUFFIXMATCH => 15, - :SUBSTRINGMATCH => 16, - :TILDE => 17, - :NOT_EQUAL => 18, - :SLASH => 19, - :DOUBLESLASH => 20, - :NOT => 21, - :EQUAL => 22, - :RPAREN => 23, - :LSQUARE => 24, - :RSQUARE => 25, - :HAS => 26, - "." => 27, - "*" => 28, - "|" => 29, - ":" => 30 } - -racc_nt_base = 31 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "FUNCTION", - "INCLUDES", - "DASHMATCH", - "LBRACE", - "HASH", - "PLUS", - "GREATER", - "S", - "STRING", - "IDENT", - "COMMA", - "NUMBER", - "PREFIXMATCH", - "SUFFIXMATCH", - "SUBSTRINGMATCH", - "TILDE", - "NOT_EQUAL", - "SLASH", - "DOUBLESLASH", - "NOT", - "EQUAL", - "RPAREN", - "LSQUARE", - "RSQUARE", - "HAS", - "\".\"", - "\"*\"", - "\"|\"", - "\":\"", - "$start", - "selector", - "simple_selector_1toN", - "prefixless_combinator_selector", - "optional_S", - "combinator", - "simple_selector", - "element_name", - "hcap_0toN", - "function", - "pseudo", - "attrib", - "hcap_1toN", - "class", - "namespaced_ident", - "namespace", - "attrib_name", - "attrib_val_0or1", - "expr", - "nth", - "attribute_id", - "negation", - "eql_incl_dash", - "negation_arg" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 9) - def _reduce_1(val, _values, result) - result = [val.first, val.last].flatten - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 11) - def _reduce_2(val, _values, result) - result = val.flatten - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 12) - def _reduce_3(val, _values, result) - result = [val.last].flatten - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 15) - def _reduce_4(val, _values, result) - result = :DIRECT_ADJACENT_SELECTOR - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 16) - def _reduce_5(val, _values, result) - result = :CHILD_SELECTOR - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 17) - def _reduce_6(val, _values, result) - result = :FOLLOWING_SELECTOR - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 18) - def _reduce_7(val, _values, result) - result = :DESCENDANT_SELECTOR - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 19) - def _reduce_8(val, _values, result) - result = :CHILD_SELECTOR - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 23) - def _reduce_9(val, _values, result) - result = if val[1].nil? - val.first - else - Node.new(:CONDITIONAL_SELECTOR, [val.first, val[1]]) - end - - result - end -.,., - -# reduce 10 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 31) - def _reduce_11(val, _values, result) - result = Node.new(:CONDITIONAL_SELECTOR, val) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 34) - def _reduce_12(val, _values, result) - result = Node.new(:CONDITIONAL_SELECTOR, val) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 37) - def _reduce_13(val, _values, result) - result = Node.new(:CONDITIONAL_SELECTOR, - [Node.new(:ELEMENT_NAME, ['*']), val.first] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 44) - def _reduce_14(val, _values, result) - result = Node.new(val.first, [nil, val.last]) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 49) - def _reduce_15(val, _values, result) - result = Node.new(val[1], [val.first, val.last]) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 52) - def _reduce_16(val, _values, result) - result = Node.new(:DESCENDANT_SELECTOR, [val.first, val.last]) - - result - end -.,., - -# reduce 17 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 57) - def _reduce_18(val, _values, result) - result = Node.new(:CLASS_CONDITION, [val[1]]) - result - end -.,., - -# reduce 19 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 61) - def _reduce_20(val, _values, result) - result = Node.new(:ELEMENT_NAME, val) - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 65) - def _reduce_21(val, _values, result) - result = Node.new(:ELEMENT_NAME, - [[val.first, val.last].compact.join(':')] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 70) - def _reduce_22(val, _values, result) - name = @namespaces.key?('xmlns') ? "xmlns:#{val.first}" : val.first - result = Node.new(:ELEMENT_NAME, [name]) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 75) - def _reduce_23(val, _values, result) - result = val[0] - result - end -.,., - -# reduce 24 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 80) - def _reduce_25(val, _values, result) - result = Node.new(:ATTRIBUTE_CONDITION, - [val[1]] + (val[2] || []) - ) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 85) - def _reduce_26(val, _values, result) - result = Node.new(:ATTRIBUTE_CONDITION, - [val[1]] + (val[2] || []) - ) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 90) - def _reduce_27(val, _values, result) - # Non standard, but hpricot supports it. - result = Node.new(:PSEUDO_CLASS, - [Node.new(:FUNCTION, ['nth-child(', val[1]])] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 98) - def _reduce_28(val, _values, result) - result = Node.new(:ELEMENT_NAME, - [[val.first, val.last].compact.join(':')] - ) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 103) - def _reduce_29(val, _values, result) - # Default namespace is not applied to attributes. - # So we don't add prefix "xmlns:" as in namespaced_ident. - result = Node.new(:ELEMENT_NAME, [val.first]) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 110) - def _reduce_30(val, _values, result) - result = Node.new(:FUNCTION, [val.first.strip]) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 113) - def _reduce_31(val, _values, result) - result = Node.new(:FUNCTION, [val.first.strip, val[1]].flatten) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 116) - def _reduce_32(val, _values, result) - result = Node.new(:FUNCTION, [val.first.strip, val[1]].flatten) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 119) - def _reduce_33(val, _values, result) - result = Node.new(:FUNCTION, [val.first.strip, val[1]].flatten) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 122) - def _reduce_34(val, _values, result) - result = Node.new(:FUNCTION, [val.first.strip, val[1]].flatten) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 126) - def _reduce_35(val, _values, result) - result = [val.first, val.last] - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 127) - def _reduce_36(val, _values, result) - result = [val.first, val.last] - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 128) - def _reduce_37(val, _values, result) - result = [val.first, val.last] - result - end -.,., - -# reduce 38 omitted - -# reduce 39 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 133) - def _reduce_40(val, _values, result) - case val[0] - when 'even' - result = Node.new(:NTH, ['2','n','+','0']) - when 'odd' - result = Node.new(:NTH, ['2','n','+','1']) - when 'n' - result = Node.new(:NTH, ['1','n','+','0']) - else - # This is not CSS standard. It allows us to support this: - # assert_xpath("//a[foo(., @href)]", @parser.parse('a:foo(@href)')) - # assert_xpath("//a[foo(., @a, b)]", @parser.parse('a:foo(@a, b)')) - # assert_xpath("//a[foo(., a, 10)]", @parser.parse('a:foo(a, 10)')) - result = val - end - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 152) - def _reduce_41(val, _values, result) - if val[1] == 'n' - result = Node.new(:NTH, val) - else - raise Racc::ParseError, "parse error on IDENT '#{val[1]}'" - end - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 158) - def _reduce_42(val, _values, result) - # n+3, -n+3 - if val[0] == 'n' - val.unshift("1") - result = Node.new(:NTH, val) - elsif val[0] == '-n' - val[0] = 'n' - val.unshift("-1") - result = Node.new(:NTH, val) - else - raise Racc::ParseError, "parse error on IDENT '#{val[1]}'" - end - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 170) - def _reduce_43(val, _values, result) - # 5n, -5n, 10n-1 - n = val[1] - if n[0, 2] == 'n-' - val[1] = 'n' - val << "-" - # b is contained in n as n is the string "n-b" - val << n[2, n.size] - result = Node.new(:NTH, val) - elsif n == 'n' - val << "+" - val << "0" - result = Node.new(:NTH, val) - else - raise Racc::ParseError, "parse error on IDENT '#{val[1]}'" - end - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 189) - def _reduce_44(val, _values, result) - result = Node.new(:PSEUDO_CLASS, [val[1]]) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 191) - def _reduce_45(val, _values, result) - result = Node.new(:PSEUDO_CLASS, [val[1]]) - result - end -.,., - -# reduce 46 omitted - -# reduce 47 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 199) - def _reduce_48(val, _values, result) - result = Node.new(:COMBINATOR, val) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 202) - def _reduce_49(val, _values, result) - result = Node.new(:COMBINATOR, val) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 205) - def _reduce_50(val, _values, result) - result = Node.new(:COMBINATOR, val) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 208) - def _reduce_51(val, _values, result) - result = Node.new(:COMBINATOR, val) - - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 211) - def _reduce_52(val, _values, result) - result = Node.new(:COMBINATOR, val) - - result - end -.,., - -# reduce 53 omitted - -# reduce 54 omitted - -# reduce 55 omitted - -# reduce 56 omitted - -# reduce 57 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 220) - def _reduce_58(val, _values, result) - result = Node.new(:ID, val) - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 223) - def _reduce_59(val, _values, result) - result = [val.first, val[1]] - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 224) - def _reduce_60(val, _values, result) - result = [val.first, val[1]] - result - end -.,., - -# reduce 61 omitted - -module_eval(<<'.,.,', 'nokogiri-css.y', 228) - def _reduce_62(val, _values, result) - result = :equal - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 229) - def _reduce_63(val, _values, result) - result = :prefix_match - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 230) - def _reduce_64(val, _values, result) - result = :suffix_match - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 231) - def _reduce_65(val, _values, result) - result = :substring_match - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 232) - def _reduce_66(val, _values, result) - result = :not_equal - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 233) - def _reduce_67(val, _values, result) - result = :includes - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 234) - def _reduce_68(val, _values, result) - result = :dash_match - result - end -.,., - -module_eval(<<'.,.,', 'nokogiri-css.y', 238) - def _reduce_69(val, _values, result) - result = Node.new(:NOT, [val[1]]) - - result - end -.,., - -# reduce 70 omitted - -# reduce 71 omitted - -# reduce 72 omitted - -# reduce 73 omitted - -# reduce 74 omitted - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser - end # module CSS -end # module Nokogiri diff --git a/test/racc/regress/opal b/test/racc/regress/opal deleted file mode 100644 index 53420a8f0e..0000000000 --- a/test/racc/regress/opal +++ /dev/null @@ -1,10107 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.2 -# from Racc grammar file "". -# - -require 'racc/parser.rb' -module Opal - class Parser < Racc::Parser - -module_eval(<<'...end opal.y/module_eval...', 'opal.y', 1808) - -...end opal.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 63, 64, 65, 8, 51, 575, 552, -92, 57, 58, - 619, 205, 206, 61, 73, 59, 60, 62, 23, 24, - 66, 67, 74, 544, 754, 607, 543, 22, 28, 27, - 90, 89, 91, 92, 97, 751, 17, 607, 273, -458, - 612, 653, 7, 41, 6, 9, 94, 93, 575, 84, - 50, 86, 85, 87, 273, 88, 95, 96, 653, 81, - 82, -100, 38, 39, -99, -68, 597, -446, 344, 343, - -95, 205, 206, 618, -446, 652, -97, 581, 575, 582, - -94, 205, 206, -96, 575, 36, 609, 608, 30, -92, - 575, 52, 652, 108, 54, 770, 32, -84, 609, 608, - 40, 101, -79, -92, 268, 752, 100, 195, 18, -100, - -99, 551, -84, 79, 73, 75, 76, 77, 78, 101, - -95, 574, 74, 80, 100, 272, -98, 63, 64, 65, - 56, 51, -97, 53, 653, 57, 58, 196, 37, 83, - 61, 272, 59, 60, 62, 23, 24, 66, 67, 454, - -534, 205, 206, 197, 22, 28, 27, 90, 89, 91, - 92, 308, 101, 17, 574, -84, -91, 100, 652, -90, - 41, 308, 596, 94, 93, -86, 84, 50, 86, 85, - 87, -88, 88, 95, 96, -85, 81, 82, -87, 38, - 39, 101, 101, -535, 574, 900, 100, 100, 101, -100, - 574, -449, -84, 100, 101, 198, 574, 649, -449, 100, - -96, -84, 210, 246, -98, 214, 215, -92, 52, -92, - -91, 54, -92, -100, -99, -100, -99, 40, -100, -99, - -94, -89, 273, 607, -95, 18, -95, 299, 726, -95, - 79, 73, 75, 76, 77, 78, -97, -90, -97, 74, - 80, -97, -86, 726, 63, 64, 65, 56, 51, -88, - 53, 544, 57, 58, 546, 37, 83, 61, 531, 59, - 60, 62, 23, 24, 66, 67, 205, 206, 653, 205, - 206, 22, 28, 27, 90, 89, 91, 92, -91, -534, - 219, 777, 300, -535, 609, 608, 605, 41, 268, 227, - 94, 93, 308, 84, 50, 86, 85, 87, 388, 88, - 95, 96, 652, 81, 82, -90, 38, 39, -99, 272, - -86, 726, 301, 302, -96, -91, -96, -88, -98, -96, - -98, 224, 810, -98, -91, 226, 225, -87, 101, 210, - 725, -93, 214, 100, -94, 52, -94, -85, 54, -94, - 391, -89, -90, 101, 40, 725, 788, -86, 100, 402, - 101, -90, 218, 415, -88, 100, -86, 79, 73, 75, - 76, 77, 78, -88, 453, 101, 74, 80, 455, 204, - 100, 63, 64, 65, 56, 51, 607, 53, 544, 57, - 58, 546, 37, 83, 61, 789, 59, 60, 62, 258, - 259, 66, 67, 876, -534, -87, -95, 877, 257, 28, - 27, 90, 89, 91, 92, -85, 456, 219, -535, -89, - -91, 101, 607, 725, 41, 607, 100, 94, 93, -100, - 84, 50, 86, 85, 87, 261, 88, 95, 96, -456, - 81, 82, -87, 38, 39, -97, -456, 609, 608, 610, - 101, -87, -85, -93, 215, 100, -89, -94, 487, 264, - 265, -85, 754, -455, -454, -89, 210, 266, 489, 214, - -455, -454, 52, 751, 813, 54, 582, 256, 491, 254, - 497, 40, -67, 609, 608, 614, 609, 608, 620, 218, - 400, 401, 203, 201, 79, 73, 75, 76, 77, 78, - 202, 514, 544, 74, 80, 546, 344, 343, 63, 64, - 65, 56, 51, 101, 53, -451, 57, 58, 100, 37, - 83, 61, -451, 59, 60, 62, 258, 259, 66, 67, - 515, -532, 527, 528, 516, 257, 28, 27, 90, 89, - 91, 92, 101, 752, 219, -331, -331, 100, 199, 625, - 200, 41, 525, -331, 94, 93, 277, 84, 50, 86, - 85, 87, 261, 88, 95, 96, 308, 81, 82, 268, - 38, 39, 532, 227, 231, 236, 237, 238, 233, 235, - 243, 244, 239, 240, -449, -449, 220, 221, -452, 101, - 241, 242, -449, 210, 100, -452, 214, -532, 533, 52, - 227, -331, 54, -331, 256, 224, 254, 230, 40, 226, - 225, 222, 223, 234, 232, 228, 218, 229, -532, 203, - 449, 79, 73, 75, 76, 77, 78, 450, 308, -458, - 74, 80, 547, 245, 548, 63, 64, 65, 56, 51, - -449, 53, -449, 57, 58, 491, 37, 83, 61, 555, - 59, 60, 62, 258, 259, 66, 67, 103, 104, 105, - 106, 107, 257, 28, 27, 90, 89, 91, 92, -453, - -84, 219, 524, 521, 531, 452, -453, 451, 41, -92, - 522, 94, 93, 558, 84, 50, 86, 85, 87, 261, - 88, 95, 96, 559, 81, 82, 561, 38, 39, 570, - 227, 231, 236, 237, 238, 233, 235, 243, 244, 239, - 240, 524, 534, 220, 221, -90, 412, 241, 242, 535, - 210, 414, 413, 214, -99, 571, 52, 404, 520, 54, - 523, 256, 224, 254, 230, 40, 226, 225, 222, 223, - 234, 232, 228, 218, 229, 587, 524, 584, 79, 73, - 75, 76, 77, 78, 585, 588, 630, 74, 80, 589, - 245, 650, -255, -255, -255, 56, -255, 452, 53, 451, - -255, -255, 613, 37, 83, -255, 617, -255, -255, -255, - -255, -255, -255, -255, 103, 104, 105, 106, 107, -255, - -255, -255, -255, -255, -255, -255, 621, -86, -255, 524, - 593, 624, 583, 625, 586, -255, -95, 591, -255, -255, - 627, -255, -255, -255, -255, -255, -255, -255, -255, -255, - -263, -255, -255, 628, -255, -255, 629, 227, 231, 236, - 237, 238, 233, 235, 243, 244, 239, 240, -284, -284, - 220, 221, 205, 206, 241, 242, -284, -255, 268, 631, - -255, 268, 227, -255, 227, 592, -255, 523, -255, 224, - -255, 230, -255, 226, 225, 222, 223, 234, 232, 228, - -255, 229, 344, 343, 602, -255, -255, -255, -255, -255, - -255, 603, 832, 813, -255, -255, 776, 245, 227, -233, - -88, 227, -255, 915, -284, -255, -284, 308, 754, -97, - -255, -255, 63, 64, 65, 8, 51, 344, 343, 751, - 57, 58, 832, 813, 670, 61, 671, 59, 60, 62, - 23, 24, 66, 67, 679, 681, -79, -85, 682, 22, - 28, 27, 90, 89, 91, 92, -94, 684, 17, 537, - 341, 340, 344, 343, 7, 41, 227, 9, 94, 93, - 694, 84, 50, 86, 85, 87, 700, 88, 95, 96, - 701, 81, 82, 702, 38, 39, 706, 227, 231, 236, - 237, 238, 233, 235, 243, 244, 239, 240, 224, 752, - 220, 221, 226, 225, 241, 242, 716, 36, 718, 721, - 281, 582, 729, 52, 772, -264, 54, 497, 32, 224, - 497, 230, 40, 226, 225, 222, 223, 234, 232, 228, - 18, 229, 497, 524, 593, 79, 73, 75, 76, 77, - 78, 822, 791, 792, 74, 80, 489, 245, 491, 63, - 64, 65, 56, 51, 800, 53, 802, 57, 58, 803, - 37, 83, 61, 694, 59, 60, 62, 258, 259, 66, - 67, 708, 807, 268, 268, 808, 257, 291, 295, 90, - 89, 91, 92, 268, 227, 219, -286, -286, 227, 592, - 813, 523, 292, 819, -286, 94, 93, 820, 84, 50, - 86, 85, 87, 558, 88, 95, 96, 561, 81, 82, - 823, 327, 824, 336, 334, 333, 561, 335, 341, 340, - 344, 343, 827, 866, 867, -283, -283, 868, 95, 96, - 813, 836, 837, -283, 289, 839, 840, 286, -535, -534, - 52, 842, -286, 54, -286, 285, 850, 852, 855, 856, - 338, 858, 915, 860, 862, 864, -265, 754, 341, 340, - 344, 343, 79, 73, 75, 76, 77, 78, 751, 794, - 878, 74, 80, 879, 880, 881, 63, 64, 65, 56, - 51, -283, 53, -283, 57, 58, 883, 296, 83, 61, - 884, 59, 60, 62, 258, 259, 66, 67, 708, 341, - 340, 344, 343, 257, 291, 295, 90, 89, 91, 92, - 524, 946, 219, 103, 104, 105, 106, 107, 947, 292, - 227, 694, 94, 93, 886, 84, 50, 86, 85, 87, - -263, 88, 95, 96, 890, 81, 82, 764, 752, 336, - 334, 333, 754, 335, 895, 341, 340, 344, 343, 897, - 903, 905, 224, 751, 906, 308, 226, 225, 222, 223, - 919, 289, -266, 921, 214, -535, 945, 52, 586, 563, - 54, 336, 334, 333, 561, 335, 338, 749, 931, 932, - 937, 855, 939, 860, 341, 340, 344, 343, 860, 79, - 73, 75, 76, 77, 78, 862, 948, 954, 74, 80, - 700, 964, 860, 298, 966, 967, 56, nil, nil, 53, - nil, nil, nil, nil, 296, 83, 63, 64, 65, 227, - 51, nil, nil, 752, 57, 58, nil, nil, nil, 61, - nil, 59, 60, 62, 258, 259, 66, 67, nil, nil, - nil, nil, nil, 257, 291, 295, 90, 89, 91, 92, - nil, 224, 219, nil, nil, 226, 225, 222, 223, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, 227, 231, 236, 237, 238, 233, 235, 243, 244, - 239, 240, nil, nil, 220, 221, nil, nil, 241, 242, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, 224, nil, 230, 40, 226, 225, 222, - 223, 234, 232, 228, 218, 229, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, 245, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, 563, 219, - 336, 334, 333, nil, 335, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, 227, 231, - 236, 237, 238, 233, 235, 243, 244, 239, 240, nil, - nil, 220, 221, nil, nil, 241, 242, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - 224, nil, 230, 40, 226, 225, 222, 223, 234, 232, - 228, 218, 229, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, 245, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, 227, 231, 236, 237, 238, - 233, 235, 243, 244, 239, 240, nil, nil, 220, 221, - nil, nil, 241, 242, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, 224, nil, 230, - 40, 226, 225, 222, 223, 234, 232, 228, 218, 229, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, 245, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 23, 24, 66, 67, nil, - nil, nil, nil, nil, 22, 28, 27, 90, 89, 91, - 92, nil, nil, 17, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, 227, 231, 236, 237, 238, 233, 235, 243, - 244, 239, 240, nil, nil, 220, 221, nil, nil, 241, - 242, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, 224, nil, 230, 40, 226, 225, - 222, 223, 234, 232, 228, 18, 229, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, 245, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 28, 27, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, 261, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, 227, - 231, 236, 237, 238, 233, 235, 243, 244, 239, 240, - nil, nil, 220, 221, nil, nil, 241, 242, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - 256, 224, nil, 230, 40, 226, 225, 222, 223, 234, - 232, 228, 218, 229, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, 245, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 258, - 259, 66, 67, nil, nil, nil, nil, nil, 257, 291, - 295, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, 261, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, 227, 231, 236, 237, - 238, 233, 235, 243, 244, 239, 240, nil, nil, 220, - 221, nil, nil, 241, 242, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, nil, 224, nil, - 230, 40, 226, 225, 222, 223, 234, 232, 228, 218, - 229, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, 245, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, 227, 231, 236, 237, 238, 233, 235, - 243, 244, 239, 240, nil, nil, 220, 221, nil, nil, - 241, 242, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, 224, nil, 230, 40, 226, - 225, 222, 223, 234, 232, 228, 18, 229, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, 245, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 23, 24, 66, 67, nil, nil, nil, - nil, nil, 22, 28, 27, 90, 89, 91, 92, nil, - nil, 17, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - 227, 231, 236, 237, 238, 233, 235, 243, 244, 239, - 240, nil, nil, 220, 221, nil, nil, 241, 242, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, 224, nil, 230, 40, 226, 225, 222, 223, - 234, 232, 228, 18, 229, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - 245, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 23, 24, 66, 67, nil, nil, nil, nil, nil, 22, - 28, 27, 90, 89, 91, 92, nil, nil, 17, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, 227, 231, 236, - 237, 238, 233, 235, 243, 244, 239, 240, nil, nil, - 220, 221, nil, nil, 241, 242, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, nil, 224, - nil, 230, 40, 226, 225, 222, 223, 234, 232, 228, - 18, 229, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, 101, 245, nil, -233, - nil, 100, 56, nil, nil, 53, nil, nil, nil, nil, - 37, 83, 63, 64, 65, nil, 51, nil, nil, nil, - 57, 58, nil, nil, nil, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 291, 295, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 292, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, 227, 231, 236, 237, 238, 233, 235, - 243, 244, 239, 240, 227, nil, 220, 221, nil, nil, - 241, 242, nil, nil, nil, nil, nil, 356, nil, nil, - 30, 241, 242, 52, nil, 224, 54, 230, 32, 226, - 225, 222, 223, 234, 232, 228, 224, 229, 230, nil, - 226, 225, 222, 223, nil, 79, 73, 75, 76, 77, - 78, nil, nil, 245, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 296, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 291, 295, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 292, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 361, nil, 88, 95, 96, nil, 81, 82, - 227, 231, 236, 237, 238, 233, 235, 243, 244, 239, - 240, 227, nil, 220, 221, nil, nil, 241, 242, nil, - nil, 367, nil, nil, 362, nil, nil, 214, 241, 242, - 52, nil, 224, 54, 230, nil, 226, 225, 222, 223, - 234, 232, 228, 224, 229, 230, nil, 226, 225, 222, - 223, nil, 79, 73, 75, 76, 77, 78, nil, nil, - 245, 74, 80, nil, nil, nil, -531, -531, -531, 56, - -531, nil, 53, nil, -531, -531, nil, 296, 83, -531, - nil, -531, -531, -531, -531, -531, -531, -531, nil, -531, - nil, nil, nil, -531, -531, -531, -531, -531, -531, -531, - nil, nil, -531, nil, nil, nil, nil, nil, nil, -531, - nil, nil, -531, -531, nil, -531, -531, -531, -531, -531, - -531, -531, -531, -531, nil, -531, -531, nil, -531, -531, - nil, 227, 231, 236, 237, 238, 233, 235, 243, 244, - 239, 240, nil, nil, 220, 221, nil, nil, 241, 242, - nil, -531, nil, nil, -531, -531, nil, -531, nil, nil, - -531, nil, -531, 224, -531, 230, -531, 226, 225, 222, - 223, 234, 232, 228, -531, 229, -531, nil, nil, -531, - -531, -531, -531, -531, -531, nil, nil, nil, -531, -531, - nil, 245, nil, -532, -532, -532, -531, -532, nil, -531, - nil, -532, -532, nil, -531, -531, -532, nil, -532, -532, - -532, -532, -532, -532, -532, nil, -532, nil, nil, nil, - -532, -532, -532, -532, -532, -532, -532, nil, nil, -532, - nil, nil, nil, nil, nil, nil, -532, nil, nil, -532, - -532, nil, -532, -532, -532, -532, -532, -532, -532, -532, - -532, nil, -532, -532, nil, -532, -532, nil, 227, 231, - 236, 237, 238, 233, 235, 243, 244, 239, 240, nil, - nil, 220, 221, nil, nil, 241, 242, nil, -532, nil, - nil, -532, -532, nil, -532, nil, nil, -532, nil, -532, - 224, -532, 230, -532, 226, 225, 222, 223, 234, 232, - 228, -532, 229, -532, nil, nil, -532, -532, -532, -532, - -532, -532, nil, nil, nil, -532, -532, nil, 245, nil, - nil, nil, nil, -532, nil, nil, -532, nil, nil, nil, - nil, -532, -532, 63, 64, 65, 8, 51, nil, nil, - nil, 57, 58, nil, nil, nil, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, nil, 17, - nil, nil, nil, nil, nil, 7, 41, 6, 9, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, 227, 231, - 236, 237, 238, 233, 235, 243, 244, 239, 240, nil, - nil, 220, 221, nil, nil, 241, 242, nil, 36, nil, - nil, 30, nil, nil, 52, nil, nil, 54, nil, 32, - 224, nil, 230, 40, 226, 225, 222, 223, 234, 232, - 228, 18, 229, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, 245, nil, - nil, nil, 404, 56, nil, nil, 53, nil, nil, nil, - nil, 37, 83, 63, 64, 65, nil, 51, nil, nil, - nil, 57, 58, nil, nil, nil, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, 563, 17, - 336, 334, 333, nil, 335, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, 563, nil, 336, - 334, 333, nil, 335, nil, nil, 563, 566, 336, 334, - 333, nil, 335, nil, nil, 569, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, 566, nil, nil, nil, - nil, 18, nil, nil, 569, 566, 79, 73, 75, 76, - 77, 78, nil, 829, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 23, 24, - 66, 67, nil, nil, nil, nil, nil, 22, 28, 27, - 90, 89, 91, 92, nil, nil, 17, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, 227, 231, 236, 237, 238, - 233, 235, 243, 244, 239, 240, nil, nil, -555, -555, - nil, nil, 241, 242, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, 224, nil, 230, - 40, 226, 225, 222, 223, 234, 232, 228, 18, 229, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 23, 24, 66, 67, nil, - nil, nil, nil, nil, 22, 28, 27, 90, 89, 91, - 92, nil, nil, 17, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, 227, 231, 236, 237, 238, 233, 235, 243, - 244, 239, 240, nil, nil, -555, -555, nil, nil, 241, - 242, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, 224, nil, 230, 40, 226, 225, - 222, 223, 234, 232, 228, 18, 229, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 23, 24, 66, 67, nil, nil, nil, nil, - nil, 22, 28, 27, 90, 89, 91, 92, nil, nil, - 17, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, 227, - -555, -555, -555, -555, 233, 235, nil, nil, -555, -555, - nil, nil, nil, nil, nil, nil, 241, 242, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - nil, 224, nil, 230, 40, 226, 225, 222, 223, 234, - 232, 228, 18, 229, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, nil, nil, nil, 56, nil, nil, 53, nil, nil, - nil, nil, 37, 83, 63, 64, 65, 8, 51, nil, - nil, nil, 57, 58, nil, nil, nil, 61, nil, 59, - 60, 62, 23, 24, 66, 67, nil, nil, nil, nil, - nil, 22, 28, 27, 90, 89, 91, 92, nil, nil, - 17, nil, nil, nil, nil, nil, 7, 41, nil, 9, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, 227, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 241, 242, nil, 36, - nil, nil, 30, nil, nil, 52, nil, nil, 54, nil, - 32, 224, nil, 230, 40, 226, 225, 222, 223, nil, - nil, 228, 18, 229, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, nil, nil, nil, 56, nil, nil, 53, nil, nil, - nil, nil, 37, 83, 63, 64, 65, 8, 51, nil, - nil, nil, 57, 58, nil, nil, nil, 61, nil, 59, - 60, 62, 23, 24, 66, 67, nil, nil, nil, nil, - nil, 22, 28, 27, 90, 89, 91, 92, nil, nil, - 17, nil, nil, nil, nil, nil, 7, 41, 6, 9, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, 227, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 241, 242, nil, 36, - nil, nil, 30, nil, nil, 52, nil, nil, 54, nil, - 32, 224, nil, 230, 40, 226, 225, 222, 223, nil, - nil, 228, 18, 229, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, nil, nil, nil, 56, nil, nil, 53, nil, nil, - nil, nil, 37, 83, 63, 64, 65, 8, 51, nil, - nil, nil, 57, 58, nil, nil, nil, 61, nil, 59, - 60, 62, 23, 24, 66, 67, nil, nil, nil, nil, - nil, 22, 28, 27, 90, 89, 91, 92, nil, nil, - 17, nil, nil, nil, nil, nil, 7, 41, nil, 9, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, 227, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 241, 242, nil, 36, - nil, nil, 30, nil, nil, 52, nil, nil, 54, nil, - 32, 224, nil, 230, 40, 226, 225, 222, 223, nil, - nil, 228, 18, 229, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 23, - 24, 66, 67, nil, nil, nil, nil, nil, 22, 28, - 27, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, 227, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 241, 242, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, 421, 224, nil, - 230, 40, 226, 225, 222, 223, nil, nil, 228, 218, - 229, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, 227, -555, -555, -555, -555, 233, 235, - nil, nil, -555, -555, nil, nil, nil, nil, nil, nil, - 241, 242, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, 421, 224, nil, 230, 40, 226, - 225, 222, 223, 234, 232, 228, 218, 229, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 23, 24, 66, 67, nil, nil, nil, - nil, nil, 22, 28, 27, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - 227, -555, -555, -555, -555, 233, 235, nil, nil, -555, - -555, nil, nil, nil, nil, nil, nil, 241, 242, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, 224, nil, 230, 40, 226, 225, 222, 223, - 234, 232, 228, 218, 229, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 28, 27, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, 261, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, 227, -555, -555, - -555, -555, 233, 235, nil, nil, -555, -555, nil, nil, - nil, nil, nil, nil, 241, 242, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, 256, 224, - nil, 230, 40, 226, 225, 222, 223, 234, 232, 228, - 218, 229, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 28, 27, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, 261, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, 227, -555, -555, -555, -555, 233, - 235, nil, nil, -555, -555, nil, nil, nil, nil, nil, - nil, 241, 242, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, 256, 224, nil, 230, 40, - 226, 225, 222, 223, 234, 232, 228, 218, 229, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 23, 24, 66, 67, nil, nil, - nil, nil, nil, 22, 28, 27, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, 227, -555, -555, -555, -555, 233, 235, nil, nil, - -555, -555, nil, nil, nil, nil, nil, nil, 241, 242, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, 224, nil, 230, 40, 226, 225, 222, - 223, 234, 232, 228, 218, 229, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, nil, 17, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, 227, 231, - 236, 237, 238, 233, 235, nil, nil, 239, 240, nil, - nil, nil, nil, nil, nil, 241, 242, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - 224, nil, 230, 40, 226, 225, 222, 223, 234, 232, - 228, 18, 229, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 23, 24, - 66, 67, nil, nil, nil, nil, nil, 22, 28, 27, - 90, 89, 91, 92, nil, nil, 17, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, 227, 231, 236, 237, 238, - 233, 235, 243, nil, 239, 240, nil, nil, nil, nil, - nil, nil, 241, 242, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, 224, nil, 230, - 40, 226, 225, 222, 223, 234, 232, 228, 18, 229, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, nil, nil, nil, - 56, nil, nil, 53, nil, nil, nil, nil, 37, 83, - 63, 64, 65, 8, 51, nil, nil, nil, 57, 58, - nil, nil, nil, 61, nil, 59, 60, 62, 23, 24, - 66, 67, nil, nil, nil, nil, nil, 22, 28, 27, - 90, 89, 91, 92, nil, nil, 17, nil, nil, nil, - nil, nil, 7, 41, nil, 9, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, 227, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 241, 242, nil, 36, nil, nil, 30, nil, - nil, 52, nil, nil, 54, nil, 32, 224, nil, nil, - 40, 226, 225, 222, 223, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 23, 24, 66, 67, nil, - nil, nil, nil, nil, 22, 28, 27, 90, 89, 91, - 92, nil, nil, 17, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, 458, 52, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 18, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 291, 295, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 258, - 259, 66, 67, nil, nil, nil, nil, nil, 257, 291, - 295, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 258, 259, 66, 67, - nil, nil, nil, nil, nil, 257, 291, 295, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 218, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 291, 295, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 218, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 291, 295, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 218, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 291, 295, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 258, 259, 66, 67, nil, nil, - nil, nil, nil, 257, 291, 295, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 218, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, nil, 219, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 218, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 218, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 258, 259, 66, 67, nil, - nil, nil, nil, nil, 257, 291, 295, 90, 89, 91, - 92, nil, nil, 219, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 218, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 291, 295, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 258, - 259, 66, 67, nil, nil, nil, nil, nil, 257, 291, - 295, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 258, 259, 66, 67, - nil, nil, nil, nil, nil, 257, 291, 295, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 218, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 291, 295, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 218, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 291, 295, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 218, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 291, 295, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 258, 259, 66, 67, nil, nil, - nil, nil, nil, 257, 291, 295, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 218, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, nil, 219, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 218, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 218, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 258, 259, 66, 67, nil, - nil, nil, nil, nil, 257, 291, 295, 90, 89, 91, - 92, nil, nil, 219, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 218, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 291, 295, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 258, - 259, 66, 67, nil, nil, nil, nil, nil, 257, 291, - 295, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 258, 259, 66, 67, - nil, nil, nil, nil, nil, 257, 291, 295, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 218, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 291, 295, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 218, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 291, 295, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 218, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 291, 295, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 258, 259, 66, 67, nil, nil, - nil, nil, nil, 257, 291, 295, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 218, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, nil, 219, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 218, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 218, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 258, 259, 66, 67, nil, - nil, nil, nil, nil, 257, 291, 295, 90, 89, 91, - 92, nil, nil, 219, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 218, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 28, 27, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, 261, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - 256, nil, 254, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 258, - 259, 66, 67, nil, nil, nil, nil, nil, 257, 28, - 27, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, 261, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 506, nil, nil, 54, nil, 256, nil, 254, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 258, 259, 66, 67, - nil, nil, nil, nil, nil, 257, 28, 27, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, 261, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 210, nil, nil, 214, nil, 510, 52, - nil, nil, 54, nil, 256, nil, 254, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 218, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, nil, nil, nil, 56, nil, - nil, 53, nil, nil, nil, nil, 37, 83, 63, 64, - 65, 8, 51, nil, nil, nil, 57, 58, nil, nil, - nil, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - 7, 41, nil, 9, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 36, nil, nil, 281, nil, nil, 52, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 291, 295, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 292, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, 764, nil, 336, 334, - 333, 754, 335, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 751, nil, nil, nil, nil, nil, nil, nil, - 289, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, nil, nil, nil, 338, nil, nil, nil, nil, - nil, nil, nil, 341, 340, 344, 343, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 518, nil, nil, 56, nil, nil, 53, nil, - nil, nil, nil, 296, 83, 63, 64, 65, 8, 51, - nil, nil, 752, 57, 58, nil, nil, nil, 61, nil, - 59, 60, 62, 23, 24, 66, 67, nil, nil, nil, - nil, nil, 22, 28, 27, 90, 89, 91, 92, nil, - nil, 17, nil, nil, nil, nil, nil, 7, 41, nil, - 9, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 36, nil, nil, 281, nil, nil, 52, nil, nil, 54, - nil, 32, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 18, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 291, 295, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 292, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, 327, nil, 336, 334, 333, nil, 335, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 289, nil, nil, - 286, nil, nil, 52, nil, nil, 54, nil, nil, nil, - nil, nil, 338, 322, nil, nil, nil, nil, nil, nil, - 341, 340, 344, 343, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 296, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 291, 295, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, 537, nil, - 52, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, nil, nil, nil, 56, - nil, nil, 53, nil, nil, nil, nil, 37, 83, 63, - 64, 65, 8, 51, nil, nil, nil, 57, 58, nil, - nil, nil, 61, nil, 59, 60, 62, 23, 24, 66, - 67, nil, nil, nil, nil, nil, 22, 28, 27, 90, - 89, 91, 92, nil, nil, 17, nil, nil, nil, nil, - nil, 7, 41, nil, 9, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 36, nil, nil, 30, nil, nil, - 52, nil, nil, 54, nil, 32, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 23, 24, 66, 67, nil, nil, - nil, nil, nil, 22, 28, 27, 90, 89, 91, 92, - nil, nil, 17, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, nil, 17, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 18, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 292, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 361, nil, 88, 95, 96, nil, 81, - 82, 327, nil, 336, 334, 333, nil, 335, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 362, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - 338, nil, 554, nil, nil, nil, nil, nil, 341, 340, - 344, 343, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 296, 83, - 61, nil, 59, 60, 62, 23, 24, 66, 67, nil, - nil, nil, nil, nil, 22, 28, 27, 90, 89, 91, - 92, nil, nil, 17, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 18, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 291, 295, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, -255, -255, -255, 56, -255, nil, 53, nil, -255, - -255, nil, 37, 83, -255, nil, -255, -255, -255, -255, - -255, -255, -255, nil, nil, nil, nil, nil, -255, -255, - -255, -255, -255, -255, -255, nil, nil, -255, nil, nil, - nil, nil, nil, nil, -255, nil, nil, -255, -255, nil, - -255, -255, -255, -255, -255, -255, -255, -255, -255, nil, - -255, -255, nil, -255, -255, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, -255, nil, nil, -255, - 268, nil, -255, nil, nil, -255, nil, -255, nil, -255, - nil, -255, nil, nil, nil, nil, nil, nil, nil, -255, - nil, nil, nil, nil, -255, -255, -255, -255, -255, -255, - nil, nil, nil, -255, -255, nil, nil, nil, -536, -536, - -536, -255, -536, nil, -255, nil, -536, -536, nil, -255, - -255, -536, nil, -536, -536, -536, -536, -536, -536, -536, - nil, nil, nil, nil, nil, -536, -536, -536, -536, -536, - -536, -536, nil, nil, -536, nil, nil, nil, nil, nil, - nil, -536, nil, nil, -536, -536, nil, -536, -536, -536, - -536, -536, -536, -536, -536, -536, nil, -536, -536, nil, - -536, -536, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -536, nil, nil, -536, -536, nil, -536, - nil, nil, -536, nil, -536, nil, -536, nil, -536, nil, - nil, nil, nil, nil, nil, nil, -536, nil, nil, nil, - nil, -536, -536, -536, -536, -536, -536, nil, nil, nil, - -536, -536, nil, nil, nil, -537, -537, -537, -536, -537, - nil, -536, nil, -537, -537, nil, -536, -536, -537, nil, - -537, -537, -537, -537, -537, -537, -537, nil, nil, nil, - nil, nil, -537, -537, -537, -537, -537, -537, -537, nil, - nil, -537, nil, nil, nil, nil, nil, nil, -537, nil, - nil, -537, -537, nil, -537, -537, -537, -537, -537, -537, - -537, -537, -537, nil, -537, -537, nil, -537, -537, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - -537, nil, nil, -537, -537, nil, -537, nil, nil, -537, - nil, -537, nil, -537, nil, -537, nil, nil, nil, nil, - nil, nil, nil, -537, nil, nil, nil, nil, -537, -537, - -537, -537, -537, -537, nil, nil, nil, -537, -537, nil, - nil, nil, -255, -255, -255, -537, -255, nil, -537, nil, - -255, -255, nil, -537, -537, -255, nil, -255, -255, -255, - -255, -255, -255, -255, nil, nil, nil, nil, nil, -255, - -255, -255, -255, -255, -255, -255, nil, nil, -255, nil, - nil, nil, nil, nil, nil, -255, nil, nil, -255, -255, - nil, -255, -255, -255, -255, -255, -255, -255, -255, -255, - nil, -255, -255, nil, -255, -255, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, -255, nil, nil, - -255, 268, nil, -255, nil, nil, -255, nil, -255, nil, - -255, nil, -255, nil, nil, nil, nil, nil, nil, nil, - -255, nil, nil, nil, nil, -255, -255, -255, -255, -255, - -255, nil, nil, nil, -255, -255, nil, nil, nil, 63, - 64, 65, -255, 51, nil, -255, nil, 57, 58, nil, - -255, -255, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 28, 27, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, 261, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, 256, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 258, 259, 66, 67, nil, nil, - nil, nil, nil, 257, 28, 27, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - 261, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, 256, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 218, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, nil, 219, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 218, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 218, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 258, 259, 66, 67, nil, - nil, nil, nil, nil, 257, 291, 295, 90, 89, 91, - 92, nil, nil, 219, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 218, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 291, 295, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, 261, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - 658, nil, 254, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 258, - 259, 66, 67, nil, nil, nil, nil, nil, 257, 291, - 295, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, 261, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, nil, nil, 254, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 258, 259, 66, 67, - nil, nil, nil, nil, nil, 257, 291, 295, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 218, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 23, 24, 66, 67, nil, nil, nil, - nil, nil, 22, 28, 27, 90, 89, 91, 92, nil, - nil, 17, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 210, nil, nil, 214, nil, 675, 52, nil, nil, 54, - nil, nil, nil, 254, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 18, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, nil, nil, nil, 56, nil, nil, 53, nil, - nil, nil, nil, 37, 83, 63, 64, 65, 8, 51, - nil, nil, nil, 57, 58, nil, nil, nil, 61, nil, - 59, 60, 62, 23, 24, 66, 67, nil, nil, nil, - nil, nil, 22, 28, 27, 90, 89, 91, 92, nil, - nil, 17, nil, nil, nil, nil, nil, 7, 41, nil, - 9, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 36, nil, nil, 30, nil, nil, 52, nil, nil, 54, - nil, 32, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 18, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, nil, nil, 404, 56, nil, nil, 53, nil, - nil, nil, nil, 37, 83, 63, 64, 65, nil, 51, - nil, nil, nil, 57, 58, nil, nil, nil, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 291, 295, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 292, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, 327, nil, 336, 334, - 333, nil, 335, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 289, nil, nil, 286, nil, nil, 52, nil, nil, 54, - nil, nil, nil, nil, nil, 338, nil, nil, nil, nil, - nil, nil, nil, 341, 340, 344, 343, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 296, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 28, 27, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, 261, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, 256, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 218, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 28, 27, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, 261, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, 256, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 258, 259, 66, 67, nil, nil, - nil, nil, nil, 257, 291, 295, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 218, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, nil, 219, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 218, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 218, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 23, 24, 66, 67, nil, - nil, nil, nil, nil, 22, 28, 27, 90, 89, 91, - 92, nil, nil, 17, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 18, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 291, 295, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, 261, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - 658, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 258, - 259, 66, 67, nil, nil, nil, nil, nil, 257, 291, - 295, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, 261, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, nil, nil, - nil, 56, nil, nil, 53, nil, nil, nil, nil, 37, - 83, 63, 64, 65, 8, 51, nil, nil, nil, 57, - 58, nil, nil, nil, 61, nil, 59, 60, 62, 23, - 24, 66, 67, nil, nil, nil, nil, nil, 22, 28, - 27, 90, 89, 91, 92, nil, nil, 17, nil, nil, - nil, nil, nil, 7, 41, nil, 9, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 36, nil, nil, 30, - nil, nil, 52, nil, nil, 54, nil, 32, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 18, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, nil, nil, - nil, 56, nil, nil, 53, nil, nil, nil, nil, 37, - 83, 63, 64, 65, 8, 51, nil, nil, nil, 57, - 58, nil, nil, nil, 61, nil, 59, 60, 62, 23, - 24, 66, 67, nil, nil, nil, nil, nil, 22, 28, - 27, 90, 89, 91, 92, nil, nil, 17, nil, nil, - nil, nil, nil, 7, 41, nil, 9, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 36, nil, nil, 30, - nil, nil, 52, nil, nil, 54, nil, 32, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 18, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 258, 259, 66, 67, - nil, nil, nil, nil, nil, 257, 291, 295, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 292, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, 764, - nil, 336, 334, 333, 754, 335, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 751, nil, nil, nil, nil, - nil, nil, nil, 712, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, nil, nil, nil, 338, nil, - nil, nil, nil, nil, nil, nil, 341, 340, 344, 343, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, nil, nil, nil, 56, nil, - nil, 53, nil, nil, nil, nil, 296, 83, 63, 64, - 65, 8, 51, nil, nil, 752, 57, 58, nil, nil, - nil, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - 7, 41, nil, 9, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 36, nil, nil, 30, nil, nil, 52, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, nil, nil, nil, 56, nil, - nil, 53, nil, nil, nil, nil, 37, 83, 63, 64, - 65, 8, 51, nil, nil, nil, 57, 58, nil, nil, - nil, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - 7, 41, nil, 9, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 36, nil, nil, 30, nil, nil, 52, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, nil, nil, nil, 56, nil, - nil, 53, nil, nil, nil, nil, 37, 83, 63, 64, - 65, 8, 51, nil, nil, nil, 57, 58, nil, nil, - nil, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - 7, 41, nil, 9, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 36, nil, nil, 30, nil, nil, 52, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 28, 27, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, 261, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, 256, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 218, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 28, 27, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, 261, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, 256, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 218, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 28, 27, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, 261, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, 256, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 23, 24, 66, 67, nil, nil, - nil, nil, nil, 22, 28, 27, 90, 89, 91, 92, - nil, nil, 17, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, nil, 17, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 18, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 218, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 258, 259, 66, 67, nil, - nil, nil, nil, nil, 257, 291, 295, 90, 89, 91, - 92, nil, nil, 219, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, 775, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 218, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 23, 24, 66, 67, nil, nil, nil, nil, - nil, 22, 28, 27, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 23, - 24, 66, 67, nil, nil, nil, nil, nil, 22, 28, - 27, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 218, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 291, 295, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 218, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 291, 295, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 218, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, nil, - nil, nil, 56, nil, nil, 53, nil, nil, nil, nil, - 37, 83, 63, 64, 65, 8, 51, nil, nil, nil, - 57, 58, nil, nil, nil, 61, nil, 59, 60, 62, - 23, 24, 66, 67, nil, nil, nil, nil, nil, 22, - 28, 27, 90, 89, 91, 92, nil, nil, 17, nil, - nil, nil, nil, nil, 7, 41, nil, 9, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 36, nil, nil, - 30, nil, nil, 52, nil, nil, 54, nil, 32, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 18, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 291, 295, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, nil, nil, nil, 56, - nil, nil, 53, nil, nil, nil, nil, 37, 83, 63, - 64, 65, 8, 51, nil, nil, nil, 57, 58, nil, - nil, nil, 61, nil, 59, 60, 62, 23, 24, 66, - 67, nil, nil, nil, nil, nil, 22, 28, 27, 90, - 89, 91, 92, nil, nil, 17, nil, nil, nil, nil, - nil, 7, 41, nil, 9, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 36, nil, nil, 30, nil, nil, - 52, nil, nil, 54, nil, 32, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 258, 259, 66, 67, nil, nil, - nil, nil, nil, 257, 291, 295, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - 261, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, 658, nil, 254, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 218, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, nil, 219, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, 261, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, 254, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 218, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - nil, nil, nil, 56, nil, nil, 53, nil, nil, nil, - nil, 37, 83, 63, 64, 65, 8, 51, nil, nil, - nil, 57, 58, nil, nil, nil, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, nil, 17, - nil, nil, nil, nil, nil, 7, 41, nil, 9, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 36, nil, - nil, 30, nil, nil, 52, nil, nil, 54, nil, 32, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 18, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - nil, nil, nil, 56, nil, nil, 53, nil, nil, nil, - nil, 37, 83, 63, 64, 65, 8, 51, nil, nil, - nil, 57, 58, nil, nil, nil, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, nil, 17, - nil, nil, nil, nil, nil, 7, 41, nil, 9, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 36, nil, - nil, 30, nil, nil, 52, nil, nil, 54, nil, 32, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 18, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 292, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 289, nil, nil, 286, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 296, 83, - 61, nil, 59, 60, 62, 258, 259, 66, 67, nil, - nil, nil, nil, nil, 257, 291, 295, 90, 89, 91, - 92, nil, nil, 219, nil, nil, nil, nil, nil, nil, - 292, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 289, nil, nil, 286, nil, nil, 52, nil, - nil, 54, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 296, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 291, 295, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - 421, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 258, - 259, 66, 67, nil, nil, nil, nil, nil, 257, 291, - 295, 90, 89, 91, 92, nil, nil, 219, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, 256, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, nil, nil, nil, 56, nil, - nil, 53, nil, nil, nil, nil, 37, 83, 63, 64, - 65, 8, 51, nil, nil, nil, 57, 58, nil, nil, - nil, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - 7, 41, nil, 9, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 36, nil, nil, 30, nil, nil, 52, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, nil, nil, nil, 56, nil, - nil, 53, nil, nil, nil, nil, 37, 83, 63, 64, - 65, 8, 51, nil, nil, nil, 57, 58, nil, nil, - nil, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - 7, 41, nil, 9, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 36, nil, nil, 30, nil, nil, 52, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, nil, nil, nil, 56, nil, - nil, 53, nil, nil, nil, nil, 37, 83, 63, 64, - 65, 8, 51, nil, nil, nil, 57, 58, nil, nil, - nil, 61, nil, 59, 60, 62, 23, 24, 66, 67, - nil, nil, nil, nil, nil, 22, 28, 27, 90, 89, - 91, 92, nil, nil, 17, nil, nil, nil, nil, nil, - 7, 41, nil, 9, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 36, nil, nil, 30, nil, nil, 52, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 291, 295, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 218, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, nil, nil, nil, 56, nil, nil, 53, nil, - nil, nil, nil, 37, 83, 63, 64, 65, 8, 51, - nil, nil, nil, 57, 58, nil, nil, nil, 61, nil, - 59, 60, 62, 23, 24, 66, 67, nil, nil, nil, - nil, nil, 22, 28, 27, 90, 89, 91, 92, nil, - nil, 17, nil, nil, nil, nil, nil, 7, 41, nil, - 9, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 36, nil, nil, 30, nil, nil, 52, nil, nil, 54, - nil, 32, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 18, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 291, 295, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 218, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 23, 24, 66, - 67, nil, nil, nil, nil, nil, 22, 28, 27, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 23, 24, 66, 67, nil, nil, - nil, nil, nil, 22, 28, 27, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, 38, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 210, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 218, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 37, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, nil, 219, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 218, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 218, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 258, 259, 66, 67, nil, - nil, nil, nil, nil, 257, 291, 295, 90, 89, 91, - 92, nil, nil, 219, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, nil, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 218, nil, nil, nil, nil, - 79, 73, 75, 76, 77, 78, nil, nil, nil, 74, - 80, nil, nil, nil, 63, 64, 65, 56, 51, nil, - 53, nil, 57, 58, nil, 37, 83, 61, nil, 59, - 60, 62, 258, 259, 66, 67, nil, nil, nil, nil, - nil, 257, 291, 295, 90, 89, 91, 92, nil, nil, - 219, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, 214, nil, nil, 52, nil, nil, 54, nil, - 256, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, nil, nil, nil, 56, nil, nil, 53, nil, nil, - nil, nil, 37, 83, 63, 64, 65, 8, 51, nil, - nil, nil, 57, 58, nil, nil, nil, 61, nil, 59, - 60, 62, 23, 24, 66, 67, nil, nil, nil, nil, - nil, 22, 28, 27, 90, 89, 91, 92, nil, nil, - 17, nil, nil, nil, nil, nil, 7, 41, nil, 9, - 94, 93, nil, 84, 50, 86, 85, 87, nil, 88, - 95, 96, nil, 81, 82, nil, 38, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 36, - nil, nil, 30, nil, nil, 52, nil, nil, 54, nil, - 32, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 18, nil, nil, nil, nil, 79, 73, 75, - 76, 77, 78, nil, nil, nil, 74, 80, nil, nil, - nil, 63, 64, 65, 56, 51, nil, 53, nil, 57, - 58, nil, 37, 83, 61, nil, 59, 60, 62, 23, - 24, 66, 67, nil, nil, nil, nil, nil, 22, 28, - 27, 90, 89, 91, 92, nil, nil, 17, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 214, - nil, nil, 52, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 18, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, nil, nil, - nil, 56, nil, nil, 53, nil, nil, nil, nil, 37, - 83, 63, 64, 65, 8, 51, nil, nil, nil, 57, - 58, nil, nil, nil, 61, nil, 59, 60, 62, 23, - 24, 66, 67, nil, nil, nil, nil, nil, 22, 28, - 27, 90, 89, 91, 92, nil, nil, 17, nil, nil, - nil, nil, nil, 7, 41, nil, 9, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 36, nil, nil, 30, - nil, nil, 52, nil, nil, 54, nil, 32, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 18, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, nil, nil, - nil, 56, nil, nil, 53, nil, nil, nil, nil, 37, - 83, 63, 64, 65, 8, 51, nil, nil, nil, 57, - 58, nil, nil, nil, 61, nil, 59, 60, 62, 23, - 24, 66, 67, nil, nil, nil, nil, nil, 22, 28, - 27, 90, 89, 91, 92, nil, nil, 17, nil, nil, - nil, nil, nil, 7, 41, nil, 9, 94, 93, nil, - 84, 50, 86, 85, 87, nil, 88, 95, 96, nil, - 81, 82, nil, 38, 39, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 36, nil, nil, 30, - nil, nil, 52, nil, nil, 54, nil, 32, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 18, - nil, nil, nil, nil, 79, 73, 75, 76, 77, 78, - nil, nil, nil, 74, 80, nil, nil, nil, 63, 64, - 65, 56, 51, nil, 53, nil, 57, 58, nil, 37, - 83, 61, nil, 59, 60, 62, 258, 259, 66, 67, - nil, nil, nil, nil, nil, 257, 291, 295, 90, 89, - 91, 92, nil, nil, 219, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 94, 93, nil, 84, 50, 86, - 85, 87, nil, 88, 95, 96, nil, 81, 82, nil, - 38, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 210, nil, nil, 214, nil, nil, 52, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 218, nil, nil, nil, - nil, 79, 73, 75, 76, 77, 78, nil, nil, nil, - 74, 80, nil, nil, nil, 63, 64, 65, 56, 51, - nil, 53, nil, 57, 58, nil, 37, 83, 61, nil, - 59, 60, 62, 258, 259, 66, 67, nil, nil, nil, - nil, nil, 257, 291, 295, 90, 89, 91, 92, nil, - nil, 219, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 94, 93, nil, 84, 50, 86, 85, 87, nil, - 88, 95, 96, nil, 81, 82, nil, 38, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 210, nil, nil, 214, nil, nil, 52, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 218, nil, nil, nil, nil, 79, 73, - 75, 76, 77, 78, nil, nil, nil, 74, 80, nil, - nil, nil, 63, 64, 65, 56, 51, nil, 53, nil, - 57, 58, nil, 37, 83, 61, nil, 59, 60, 62, - 258, 259, 66, 67, nil, nil, nil, nil, nil, 257, - 291, 295, 90, 89, 91, 92, nil, nil, 219, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 94, 93, - nil, 84, 50, 86, 85, 87, nil, 88, 95, 96, - nil, 81, 82, nil, 38, 39, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 210, nil, nil, - 214, nil, nil, 52, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 218, nil, nil, nil, nil, 79, 73, 75, 76, 77, - 78, nil, nil, nil, 74, 80, nil, nil, nil, 63, - 64, 65, 56, 51, nil, 53, nil, 57, 58, nil, - 37, 83, 61, nil, 59, 60, 62, 258, 259, 66, - 67, nil, nil, nil, nil, nil, 257, 291, 295, 90, - 89, 91, 92, nil, nil, 219, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 94, 93, nil, 84, 50, - 86, 85, 87, 261, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 210, nil, nil, 214, nil, nil, - 52, nil, nil, 54, nil, nil, nil, 254, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, nil, nil, nil, 56, - nil, nil, 53, nil, nil, nil, nil, 37, 83, 63, - 64, 65, 8, 51, nil, nil, nil, 57, 58, nil, - nil, nil, 61, nil, 59, 60, 62, 23, 24, 66, - 67, nil, nil, nil, nil, nil, 22, 28, 27, 90, - 89, 91, 92, nil, nil, 17, nil, nil, nil, nil, - nil, 7, 41, nil, 9, 94, 93, nil, 84, 50, - 86, 85, 87, nil, 88, 95, 96, nil, 81, 82, - nil, 38, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 36, nil, nil, 30, nil, nil, - 52, nil, nil, 54, nil, 32, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, - nil, nil, 79, 73, 75, 76, 77, 78, nil, nil, - nil, 74, 80, nil, nil, nil, 63, 64, 65, 56, - 51, nil, 53, nil, 57, 58, nil, 37, 83, 61, - nil, 59, 60, 62, 258, 259, 66, 67, nil, nil, - nil, nil, nil, 257, 291, 295, 90, 89, 91, 92, - nil, nil, 219, nil, nil, nil, nil, nil, nil, 292, - nil, nil, 94, 93, nil, 84, 50, 86, 85, 87, - nil, 88, 95, 96, nil, 81, 82, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 926, nil, nil, 214, nil, nil, 52, nil, nil, - 54, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 79, - 73, 75, 76, 77, 78, nil, nil, nil, 74, 80, - nil, nil, nil, 63, 64, 65, 56, 51, nil, 53, - nil, 57, 58, nil, 296, 83, 61, nil, 59, 60, - 62, 258, 259, 66, 67, nil, nil, nil, nil, nil, - 257, 291, 295, 90, 89, 91, 92, nil, nil, 219, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 210, nil, - nil, 214, nil, nil, 52, nil, nil, 54, nil, 658, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 218, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - nil, nil, nil, 56, nil, nil, 53, nil, nil, nil, - nil, 37, 83, 63, 64, 65, 8, 51, nil, nil, - nil, 57, 58, nil, nil, nil, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, nil, 17, - nil, nil, nil, nil, nil, 7, 41, nil, 9, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 36, nil, - nil, 30, nil, nil, 52, nil, nil, 54, nil, 32, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 18, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - nil, nil, nil, 56, nil, nil, 53, nil, nil, nil, - nil, 37, 83, 63, 64, 65, 8, 51, nil, nil, - nil, 57, 58, nil, nil, nil, 61, nil, 59, 60, - 62, 23, 24, 66, 67, nil, nil, nil, nil, nil, - 22, 28, 27, 90, 89, 91, 92, nil, nil, 17, - nil, nil, nil, nil, nil, 7, 41, nil, 9, 94, - 93, nil, 84, 50, 86, 85, 87, nil, 88, 95, - 96, nil, 81, 82, nil, 38, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 36, nil, - nil, 30, nil, nil, 52, nil, nil, 54, nil, 32, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 18, nil, nil, nil, nil, 79, 73, 75, 76, - 77, 78, nil, nil, nil, 74, 80, nil, nil, nil, - 63, 64, 65, 56, 51, nil, 53, nil, 57, 58, - nil, 37, 83, 61, nil, 59, 60, 62, 258, 259, - 66, 67, nil, nil, nil, nil, nil, 257, 291, 295, - 90, 89, 91, 92, nil, nil, 219, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 214, nil, - nil, 52, nil, nil, 54, nil, 658, nil, 254, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 218, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, nil, nil, nil, - 56, nil, nil, 53, nil, nil, nil, nil, 37, 83, - 63, 64, 65, 8, 51, nil, nil, nil, 57, 58, - nil, nil, nil, 61, nil, 59, 60, 62, 23, 24, - 66, 67, nil, nil, nil, nil, nil, 22, 28, 27, - 90, 89, 91, 92, nil, nil, 17, nil, nil, nil, - nil, nil, 7, 41, nil, 9, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 36, nil, nil, 30, nil, - nil, 52, nil, nil, 54, nil, 32, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, nil, nil, nil, - 56, nil, nil, 53, nil, nil, nil, nil, 37, 83, - 63, 64, 65, 8, 51, nil, nil, nil, 57, 58, - nil, nil, nil, 61, nil, 59, 60, 62, 23, 24, - 66, 67, nil, nil, nil, nil, nil, 22, 28, 27, - 90, 89, 91, 92, nil, nil, 17, nil, nil, nil, - nil, nil, 7, 41, nil, 9, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 36, nil, nil, 30, nil, - nil, 52, nil, nil, 54, nil, 32, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, nil, nil, nil, - 56, nil, nil, 53, nil, nil, nil, nil, 37, 83, - 63, 64, 65, 8, 51, nil, nil, nil, 57, 58, - nil, nil, nil, 61, nil, 59, 60, 62, 23, 24, - 66, 67, nil, nil, nil, nil, nil, 22, 28, 27, - 90, 89, 91, 92, nil, nil, 17, nil, nil, nil, - nil, nil, 7, 41, nil, 9, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 36, nil, nil, 30, nil, - nil, 52, nil, nil, 54, nil, 32, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, nil, nil, nil, - 56, nil, nil, 53, nil, nil, nil, nil, 37, 83, - 63, 64, 65, 8, 51, nil, nil, nil, 57, 58, - nil, nil, nil, 61, nil, 59, 60, 62, 23, 24, - 66, 67, nil, nil, nil, nil, nil, 22, 28, 27, - 90, 89, 91, 92, nil, nil, 17, nil, nil, nil, - nil, nil, 7, 41, nil, 9, 94, 93, nil, 84, - 50, 86, 85, 87, nil, 88, 95, 96, nil, 81, - 82, nil, 38, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 36, nil, nil, 30, nil, - nil, 52, nil, nil, 54, nil, 32, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 73, 75, 76, 77, 78, nil, - nil, nil, 74, 80, nil, nil, nil, 63, 64, 65, - 56, 51, nil, 53, nil, 57, 58, nil, 37, 83, - 61, nil, 59, 60, 62, 258, 259, 66, 67, nil, - nil, nil, nil, nil, 257, 28, 27, 90, 89, 91, - 92, nil, nil, 219, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 94, 93, nil, 84, 50, 86, 85, - 87, 261, 88, 95, 96, nil, 81, 82, nil, 38, - 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 210, nil, nil, 214, nil, nil, 52, nil, - nil, 54, nil, 256, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 218, nil, nil, nil, -538, - 79, 73, 75, 76, 77, 78, -538, -538, -538, 74, - 80, nil, -538, -538, nil, -538, nil, 56, nil, nil, - 53, nil, nil, nil, -538, 37, 83, nil, nil, nil, - nil, nil, nil, nil, nil, -538, -538, nil, -538, -538, - -538, -538, -538, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, -538, -538, -538, -538, - -538, -538, -538, -538, -538, -538, -538, -538, -538, -538, - -538, -283, nil, -538, -538, -538, nil, 636, -283, -283, - -283, -538, nil, nil, -283, -283, nil, -283, -538, nil, - -538, nil, -538, -538, -538, -538, -538, -538, -538, nil, - -538, -538, -538, nil, nil, nil, nil, -283, -283, nil, - -283, -283, -283, -283, -283, -538, -538, nil, -87, nil, - -538, nil, nil, -538, nil, -538, nil, -96, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, -283, -283, - -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, - -283, -283, -283, nil, nil, -283, -283, -283, nil, 639, - nil, nil, nil, -283, nil, nil, nil, nil, nil, nil, - -283, nil, -283, nil, -283, -283, -283, -283, -283, -283, - -283, nil, -283, nil, -283, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, -283, -283, nil, - -89, nil, -283, -538, nil, -283, nil, -283, nil, -98, - -538, -538, -538, nil, nil, -538, -538, -538, nil, -538, - nil, nil, nil, nil, nil, nil, nil, nil, -538, -538, - -538, nil, nil, nil, nil, nil, nil, nil, nil, -538, - -538, nil, -538, -538, -538, -538, -538, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - -538, -538, -538, -538, -538, -538, -538, -538, -538, -538, - -538, -538, -538, -538, -538, nil, nil, -538, -538, -538, - nil, 790, -538, nil, nil, -538, nil, nil, -538, nil, - -538, nil, -538, nil, -538, nil, -538, -538, -538, -538, - -538, -538, -538, nil, -538, -538, -538, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, -538, - -538, -538, -538, nil, -538, -283, nil, -538, nil, -538, - nil, -96, -283, -283, -283, nil, nil, -283, -283, -283, - nil, -283, nil, nil, nil, nil, nil, nil, nil, nil, - nil, -283, -283, nil, nil, nil, nil, nil, nil, nil, - nil, -283, -283, nil, -283, -283, -283, -283, -283, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, -283, -283, -283, -283, -283, -283, -283, -283, - -283, -283, -283, -283, -283, -283, -283, nil, nil, -283, - -283, -283, nil, 639, -283, nil, nil, -283, nil, nil, - -283, nil, -283, nil, -283, nil, -283, nil, -283, -283, - -283, -283, -283, -283, -283, nil, -283, nil, -283, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, -283, -283, -283, -283, nil, -283, -292, nil, -283, - nil, -283, nil, -98, -292, -292, -292, nil, nil, -292, - -292, -292, nil, -292, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -292, -292, nil, nil, nil, nil, nil, - nil, nil, nil, -292, -292, nil, -292, -292, -292, -292, - -292, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, -292, -292, -292, -292, -292, -292, - -292, -292, -292, -292, -292, -292, -292, -292, -292, nil, - nil, -292, -292, -292, nil, nil, -292, nil, 277, -292, - nil, nil, -292, nil, -292, nil, -292, nil, -292, nil, - -292, -292, -292, -292, -292, -292, -292, nil, -292, nil, - -292, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -292, -292, -292, -292, -278, -292, nil, - nil, -292, nil, -292, -278, -278, -278, nil, nil, -278, - -278, -278, nil, -278, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -278, -278, -278, nil, nil, nil, nil, - nil, nil, nil, -278, -278, nil, -278, -278, -278, -278, - -278, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, -278, -278, -278, -278, -278, -278, - -278, -278, -278, -278, -278, -278, -278, -278, -278, nil, - nil, -278, -278, -278, nil, nil, -278, nil, nil, -278, - nil, nil, -278, nil, -278, nil, -278, nil, -278, nil, - -278, -278, -278, -278, -278, -278, -278, nil, -278, nil, - -278, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -278, -278, -278, -278, -554, -278, nil, - -278, -278, nil, -278, -554, -554, -554, nil, nil, -554, - -554, -554, nil, -554, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -554, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -554, -554, nil, -554, -554, -554, -554, - -554, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, -554, nil, nil, nil, nil, nil, - nil, -554, -554, -554, nil, nil, -554, -554, -554, nil, - -554, nil, nil, nil, nil, -554, -554, nil, nil, nil, - -554, nil, nil, -554, nil, nil, nil, nil, 268, -554, - -554, -554, nil, -554, -554, -554, -554, -554, nil, nil, - nil, nil, 764, nil, 336, 334, 333, 754, 335, nil, - -554, nil, nil, nil, nil, nil, nil, nil, 751, nil, - nil, nil, -554, -554, nil, -554, nil, nil, -554, -554, - -554, -554, -554, -554, -554, -554, -554, nil, -554, nil, - -554, 338, 749, nil, nil, 268, -554, nil, -554, 341, - 340, 344, 343, nil, nil, nil, nil, nil, -554, -554, - nil, -554, -554, -554, -554, -554, nil, -554, nil, nil, - nil, nil, nil, 436, 440, nil, nil, 438, nil, nil, - -554, nil, -554, nil, nil, -554, 142, 143, 752, 139, - 121, 122, 123, 130, 127, 129, nil, nil, 124, 125, - -554, -554, nil, nil, 144, 145, 131, 132, -554, nil, - nil, nil, nil, 268, -554, nil, nil, nil, nil, nil, - 136, 135, nil, 120, 141, 138, 137, 133, 134, 128, - 126, 118, 140, 119, nil, -554, 146, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, -554, nil, - -554, nil, nil, -554, 156, 167, 157, 180, 153, 173, - 163, 162, 188, 191, 178, 161, 160, 155, 181, 189, - 190, 165, 154, 168, 172, 174, 166, 159, nil, nil, - nil, 175, 182, 177, 176, 169, 179, 164, 152, 171, - 170, 183, 184, 185, 186, 187, 151, 158, 149, 150, - 147, 148, nil, 111, 113, 110, nil, 112, nil, nil, - nil, nil, nil, nil, nil, nil, 142, 143, nil, 139, - 121, 122, 123, 130, 127, 129, nil, nil, 124, 125, - nil, nil, nil, nil, 144, 145, 131, 132, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 136, 135, nil, 120, 141, 138, 137, 133, 134, 128, - 126, 118, 140, 119, nil, nil, 146, 192, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 80, 156, 167, - 157, 180, 153, 173, 163, 162, 188, 191, 178, 161, - 160, 155, 181, 189, 190, 165, 154, 168, 172, 174, - 166, 159, nil, nil, nil, 175, 182, 177, 176, 169, - 179, 164, 152, 171, 170, 183, 184, 185, 186, 187, - 151, 158, 149, 150, 147, 148, nil, 111, 113, nil, - nil, 112, nil, nil, nil, nil, nil, nil, nil, nil, - 142, 143, nil, 139, 121, 122, 123, 130, 127, 129, - nil, nil, 124, 125, nil, nil, nil, nil, 144, 145, - 131, 132, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 136, 135, nil, 120, 141, 138, - 137, 133, 134, 128, 126, 118, 140, 119, nil, nil, - 146, 192, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 80, 156, 167, 157, 180, 153, 173, 163, 162, - 188, 191, 178, 161, 160, 155, 181, 189, 190, 165, - 154, 168, 172, 174, 166, 159, nil, nil, nil, 175, - 182, 177, 176, 169, 179, 164, 152, 171, 170, 183, - 184, 185, 186, 187, 151, 158, 149, 150, 147, 148, - nil, 111, 113, nil, nil, 112, nil, nil, nil, nil, - nil, nil, nil, nil, 142, 143, nil, 139, 121, 122, - 123, 130, 127, 129, nil, nil, 124, 125, nil, nil, - nil, nil, 144, 145, 131, 132, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 136, 135, - nil, 120, 141, 138, 137, 133, 134, 128, 126, 118, - 140, 119, nil, nil, 146, 192, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 80, 156, 167, 157, 180, - 153, 173, 163, 162, 188, 191, 178, 161, 160, 155, - 181, 189, 190, 165, 154, 168, 172, 174, 166, 159, - nil, nil, nil, 175, 182, 177, 176, 169, 179, 164, - 152, 171, 170, 183, 184, 185, 186, 187, 151, 158, - 149, 150, 147, 148, nil, 111, 113, nil, nil, 112, - nil, nil, nil, nil, nil, nil, nil, nil, 142, 143, - nil, 139, 121, 122, 123, 130, 127, 129, nil, nil, - 124, 125, nil, nil, nil, nil, 144, 145, 131, 132, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 136, 135, nil, 120, 141, 138, 137, 133, - 134, 128, 126, 118, 140, 119, nil, nil, 146, 192, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 80, - 156, 167, 157, 180, 153, 173, 163, 162, 188, 191, - 178, 161, 160, 155, 181, 189, 190, 165, 154, 168, - 172, 174, 166, 159, nil, nil, nil, 175, 182, 177, - 376, 375, 377, 374, 152, 171, 170, 183, 184, 185, - 186, 187, 151, 158, 149, 150, 372, 373, nil, 370, - 113, 86, 85, 371, nil, 88, nil, nil, nil, nil, - nil, nil, 142, 143, nil, 139, 121, 122, 123, 130, - 127, 129, nil, nil, 124, 125, nil, nil, nil, nil, - 144, 145, 131, 132, nil, nil, nil, nil, nil, 381, - nil, nil, nil, nil, nil, nil, 136, 135, nil, 120, - 141, 138, 137, 133, 134, 128, 126, 118, 140, 119, - nil, nil, 146, 156, 167, 157, 180, 153, 173, 163, - 162, 188, 191, 178, 161, 160, 155, 181, 189, 190, - 165, 154, 168, 172, 174, 166, 159, nil, nil, nil, - 175, 182, 177, 176, 169, 179, 164, 152, 171, 170, - 183, 184, 185, 186, 187, 151, 158, 149, 150, 147, - 148, nil, 111, 113, 398, 397, 112, nil, 399, nil, - nil, nil, nil, nil, nil, 142, 143, nil, 139, 121, - 122, 123, 130, 127, 129, nil, nil, 124, 125, nil, - nil, nil, nil, 144, 145, 131, 132, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 136, - 135, nil, 120, 141, 138, 137, 133, 134, 128, 126, - 118, 140, 119, nil, nil, 146, 156, 167, 157, 180, - 153, 173, 163, 162, 188, 191, 178, 161, 160, 155, - 181, 189, 190, 165, 154, 168, 172, 174, 166, 159, - nil, nil, nil, 175, 182, 177, 176, 169, 179, 164, - 152, 171, 170, 183, 184, 185, 186, 187, 151, 158, - 149, 150, 147, 148, nil, 111, 113, 398, 397, 112, - nil, 399, nil, nil, nil, nil, nil, nil, 142, 143, - nil, 139, 121, 122, 123, 130, 127, 129, nil, nil, - 124, 125, nil, nil, nil, nil, 144, 145, 131, 132, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 136, 135, nil, 120, 141, 138, 137, 133, - 134, 128, 126, 118, 140, 119, nil, nil, 146, 156, - 167, 157, 180, 153, 173, 163, 162, 188, 191, 178, - 161, 160, 155, 181, 189, 190, 165, 154, 168, 172, - 174, 166, 159, nil, nil, nil, 175, 182, 177, 176, - 169, 179, 164, 152, 171, 170, 183, 184, 185, 186, - 187, 151, 158, 149, 150, 147, 148, nil, 111, 113, - nil, nil, 112, nil, nil, nil, nil, nil, nil, nil, - nil, 142, 143, nil, 139, 121, 122, 123, 130, 127, - 129, nil, nil, 124, 125, nil, nil, nil, nil, 144, - 145, 131, 132, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 136, 135, nil, 120, 141, - 138, 137, 133, 134, 128, 126, 118, 140, 119, 430, - 434, 146, nil, 431, nil, nil, nil, nil, nil, nil, - nil, nil, 142, 143, nil, 139, 121, 122, 123, 130, - 127, 129, nil, nil, 124, 125, nil, nil, nil, nil, - 144, 145, 131, 132, nil, nil, nil, nil, nil, 268, - nil, nil, nil, nil, nil, nil, 136, 135, nil, 120, - 141, 138, 137, 133, 134, 128, 126, 118, 140, 119, - 443, 434, 146, nil, 444, nil, nil, nil, nil, nil, - nil, nil, nil, 142, 143, nil, 139, 121, 122, 123, - 130, 127, 129, nil, nil, 124, 125, nil, nil, nil, - nil, 144, 145, 131, 132, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 136, 135, nil, - 120, 141, 138, 137, 133, 134, 128, 126, 118, 140, - 119, 443, 434, 146, nil, 444, nil, nil, nil, nil, - nil, nil, nil, nil, 142, 143, nil, 139, 121, 122, - 123, 130, 127, 129, nil, nil, 124, 125, nil, nil, - nil, nil, 144, 145, 131, 132, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 136, 135, - nil, 120, 141, 138, 137, 133, 134, 128, 126, 118, - 140, 119, 443, 434, 146, nil, 444, nil, nil, nil, - nil, nil, nil, nil, nil, 142, 143, nil, 139, 121, - 122, 123, 130, 127, 129, nil, nil, 124, 125, nil, - nil, nil, nil, 144, 145, 131, 132, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 136, - 135, nil, 120, 141, 138, 137, 133, 134, 128, 126, - 118, 140, 119, 443, 434, 146, nil, 444, nil, nil, - nil, nil, nil, nil, nil, nil, 142, 143, nil, 139, - 121, 122, 123, 130, 127, 129, nil, nil, 124, 125, - nil, nil, nil, nil, 144, 145, 131, 132, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 136, 135, nil, 120, 141, 138, 137, 133, 134, 128, - 126, 118, 140, 119, 642, 434, 146, nil, 643, nil, - nil, nil, nil, nil, nil, nil, nil, 142, 143, nil, - 139, 121, 122, 123, 130, 127, 129, nil, nil, 124, - 125, nil, nil, nil, nil, 144, 145, 131, 132, nil, - nil, nil, nil, nil, 268, nil, nil, nil, nil, nil, - nil, 136, 135, nil, 120, 141, 138, 137, 133, 134, - 128, 126, 118, 140, 119, 644, 440, 146, nil, 645, - nil, nil, nil, nil, nil, nil, nil, nil, 142, 143, - nil, 139, 121, 122, 123, 130, 127, 129, nil, nil, - 124, 125, nil, nil, nil, nil, 144, 145, 131, 132, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 136, 135, nil, 120, 141, 138, 137, 133, - 134, 128, 126, 118, 140, 119, 686, 434, 146, nil, - 687, nil, nil, nil, nil, nil, nil, nil, nil, 142, - 143, nil, 139, 121, 122, 123, 130, 127, 129, nil, - nil, 124, 125, nil, nil, nil, nil, 144, 145, 131, - 132, nil, nil, nil, nil, nil, 268, nil, nil, nil, - nil, nil, nil, 136, 135, nil, 120, 141, 138, 137, - 133, 134, 128, 126, 118, 140, 119, 689, 440, 146, - nil, 690, nil, nil, nil, nil, nil, nil, nil, nil, - 142, 143, nil, 139, 121, 122, 123, 130, 127, 129, - nil, nil, 124, 125, nil, nil, nil, nil, 144, 145, - 131, 132, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 136, 135, nil, 120, 141, 138, - 137, 133, 134, 128, 126, 118, 140, 119, 443, 434, - 146, nil, 444, nil, nil, nil, nil, nil, nil, nil, - nil, 142, 143, nil, 139, 121, 122, 123, 130, 127, - 129, nil, nil, 124, 125, nil, nil, nil, nil, 144, - 145, 131, 132, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 136, 135, nil, 120, 141, - 138, 137, 133, 134, 128, 126, 118, 140, 119, 642, - 434, 146, nil, 643, nil, nil, nil, nil, nil, nil, - nil, nil, 142, 143, nil, 139, 121, 122, 123, 130, - 127, 129, nil, nil, 124, 125, nil, nil, nil, nil, - 144, 145, 131, 132, nil, nil, nil, nil, nil, 268, - nil, nil, nil, nil, nil, nil, 136, 135, nil, 120, - 141, 138, 137, 133, 134, 128, 126, 118, 140, 119, - 644, 440, 146, nil, 645, nil, nil, nil, nil, nil, - nil, nil, nil, 142, 143, nil, 139, 121, 122, 123, - 130, 127, 129, nil, nil, 124, 125, nil, nil, nil, - nil, 144, 145, 131, 132, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 136, 135, nil, - 120, 141, 138, 137, 133, 134, 128, 126, 118, 140, - 119, 733, 434, 146, nil, 734, nil, nil, nil, nil, - nil, nil, nil, nil, 142, 143, nil, 139, 121, 122, - 123, 130, 127, 129, nil, nil, 124, 125, nil, nil, - nil, nil, 144, 145, 131, 132, nil, nil, nil, nil, - nil, 268, nil, nil, nil, nil, nil, nil, 136, 135, - nil, 120, 141, 138, 137, 133, 134, 128, 126, 118, - 140, 119, 735, 440, 146, nil, 736, nil, nil, nil, - nil, nil, nil, nil, nil, 142, 143, nil, 139, 121, - 122, 123, 130, 127, 129, nil, nil, 124, 125, nil, - nil, nil, nil, 144, 145, 131, 132, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 136, - 135, nil, 120, 141, 138, 137, 133, 134, 128, 126, - 118, 140, 119, 741, 440, 146, nil, 739, nil, nil, - nil, nil, nil, nil, nil, nil, 142, 143, nil, 139, - 121, 122, 123, 130, 127, 129, nil, nil, 124, 125, - nil, nil, nil, nil, 144, 145, 131, 132, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 136, 135, nil, 120, 141, 138, 137, 133, 134, 128, - 126, 118, 140, 119, 443, 434, 146, nil, 444, nil, - nil, nil, nil, nil, nil, nil, nil, 142, 143, nil, - 139, 121, 122, 123, 130, 127, 129, nil, nil, 124, - 125, nil, nil, nil, nil, 144, 145, 131, 132, nil, - nil, nil, nil, nil, 268, nil, nil, nil, nil, nil, - nil, 136, 135, nil, 120, 141, 138, 137, 133, 134, - 128, 126, 118, 140, 119, 741, 440, 146, nil, 892, - nil, nil, nil, nil, nil, nil, nil, nil, 142, 143, - nil, 139, 121, 122, 123, 130, 127, 129, nil, nil, - 124, 125, nil, nil, nil, nil, 144, 145, 131, 132, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 136, 135, nil, 120, 141, 138, 137, 133, - 134, 128, 126, 118, 140, 119, 959, 434, 146, nil, - 960, nil, nil, nil, nil, nil, nil, nil, nil, 142, - 143, nil, 139, 121, 122, 123, 130, 127, 129, nil, - nil, 124, 125, nil, nil, nil, nil, 144, 145, 131, - 132, nil, nil, nil, nil, nil, 268, nil, nil, nil, - nil, nil, nil, 136, 135, nil, 120, 141, 138, 137, - 133, 134, 128, 126, 118, 140, 119, 961, 440, 146, - nil, 962, nil, nil, nil, nil, nil, nil, nil, nil, - 142, 143, nil, 139, 121, 122, 123, 130, 127, 129, - nil, nil, 124, 125, nil, nil, nil, nil, 144, 145, - 131, 132, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 136, 135, nil, 120, 141, 138, - 137, 133, 134, 128, 126, 118, 140, 119, nil, nil, - 146 ] - -racc_action_check = [ - 0, 0, 0, 0, 0, 347, 321, 354, 0, 0, - 392, 746, 746, 0, 71, 0, 0, 0, 0, 0, - 0, 0, 71, 313, 852, 615, 313, 0, 0, 0, - 0, 0, 0, 0, 1, 852, 0, 387, 26, 209, - 387, 485, 0, 0, 0, 0, 0, 0, 348, 0, - 0, 0, 0, 0, 55, 0, 0, 0, 497, 0, - 0, 357, 0, 0, 587, 681, 366, 370, 852, 852, - 733, 310, 310, 392, 370, 485, 734, 352, 838, 352, - 839, 604, 604, 735, 889, 0, 615, 615, 0, 209, - 896, 0, 497, 6, 0, 615, 0, 287, 387, 387, - 0, 746, 681, 924, 26, 852, 746, 9, 0, 927, - 948, 321, 354, 0, 0, 0, 0, 0, 0, 347, - 959, 347, 0, 0, 347, 26, 736, 17, 17, 17, - 0, 17, 960, 0, 507, 17, 17, 10, 0, 0, - 17, 55, 17, 17, 17, 17, 17, 17, 17, 211, - 735, 457, 457, 11, 17, 17, 17, 17, 17, 17, - 17, 310, 348, 17, 348, 287, 357, 348, 507, 587, - 17, 604, 366, 17, 17, 733, 17, 17, 17, 17, - 17, 734, 17, 17, 17, 839, 17, 17, 735, 17, - 17, 366, 838, 736, 838, 838, 366, 838, 889, 211, - 889, 371, 287, 889, 896, 12, 896, 457, 371, 896, - 961, 287, 17, 20, 962, 17, 17, 924, 17, 924, - 290, 17, 924, 927, 948, 927, 948, 17, 927, 948, - 967, 736, 293, 383, 959, 17, 959, 34, 577, 959, - 17, 17, 17, 17, 17, 17, 960, 525, 960, 17, - 17, 960, 686, 578, 18, 18, 18, 17, 18, 687, - 17, 314, 18, 18, 314, 17, 17, 18, 453, 18, - 18, 18, 18, 18, 18, 18, 698, 698, 508, 15, - 15, 18, 18, 18, 18, 18, 18, 18, 290, 961, - 18, 629, 36, 962, 383, 383, 383, 18, 293, 461, - 18, 18, 41, 18, 18, 18, 18, 18, 77, 18, - 18, 18, 508, 18, 18, 525, 18, 18, 453, 293, - 686, 841, 37, 37, 961, 290, 961, 687, 962, 961, - 962, 461, 698, 962, 290, 461, 461, 689, 577, 18, - 577, 629, 18, 577, 967, 18, 967, 807, 18, 967, - 78, 690, 525, 578, 18, 578, 642, 686, 578, 97, - 3, 525, 18, 193, 687, 3, 686, 18, 18, 18, - 18, 18, 18, 687, 210, 278, 18, 18, 212, 14, - 278, 22, 22, 22, 18, 22, 385, 18, 317, 22, - 22, 317, 18, 18, 22, 643, 22, 22, 22, 22, - 22, 22, 22, 791, 689, 689, 642, 792, 22, 22, - 22, 22, 22, 22, 22, 807, 213, 22, 690, 690, - 14, 841, 389, 841, 22, 394, 841, 22, 22, 14, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 372, - 22, 22, 689, 22, 22, 643, 372, 385, 385, 385, - 351, 689, 807, 791, 219, 351, 690, 792, 251, 25, - 25, 807, 860, 373, 374, 690, 22, 25, 252, 22, - 373, 374, 22, 860, 934, 22, 934, 22, 255, 22, - 267, 22, 280, 389, 389, 389, 394, 394, 394, 22, - 83, 83, 13, 13, 22, 22, 22, 22, 22, 22, - 13, 282, 703, 22, 22, 703, 860, 860, 23, 23, - 23, 22, 23, 597, 22, 375, 23, 23, 597, 22, - 22, 23, 375, 23, 23, 23, 23, 23, 23, 23, - 283, 361, 296, 296, 284, 23, 23, 23, 23, 23, - 23, 23, 744, 860, 23, 42, 42, 744, 13, 648, - 13, 23, 289, 42, 23, 23, 291, 23, 23, 23, - 23, 23, 23, 23, 23, 23, 292, 23, 23, 295, - 23, 23, 301, 648, 648, 648, 648, 648, 648, 648, - 648, 648, 648, 648, 361, 361, 648, 648, 376, 750, - 648, 648, 361, 23, 750, 376, 23, 361, 302, 23, - 305, 42, 23, 42, 23, 648, 23, 648, 23, 648, - 648, 648, 648, 648, 648, 648, 23, 648, 361, 208, - 208, 23, 23, 23, 23, 23, 23, 208, 312, 35, - 23, 23, 315, 648, 316, 24, 24, 24, 23, 24, - 361, 23, 361, 24, 24, 318, 23, 23, 24, 326, - 24, 24, 24, 24, 24, 24, 24, 5, 5, 5, - 5, 5, 24, 24, 24, 24, 24, 24, 24, 377, - 35, 24, 288, 288, 300, 208, 377, 208, 24, 35, - 288, 24, 24, 327, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 329, 24, 24, 330, 24, 24, 342, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 303, 303, 484, 484, 300, 110, 484, 484, 303, - 24, 110, 110, 24, 300, 345, 24, 353, 288, 24, - 288, 24, 484, 24, 484, 24, 484, 484, 484, 484, - 484, 484, 484, 24, 484, 356, 355, 355, 24, 24, - 24, 24, 24, 24, 355, 358, 430, 24, 24, 362, - 484, 484, 27, 27, 27, 24, 27, 303, 24, 303, - 27, 27, 388, 24, 24, 27, 391, 27, 27, 27, - 27, 27, 27, 27, 279, 279, 279, 279, 279, 27, - 27, 27, 27, 27, 27, 27, 410, 430, 27, 364, - 364, 416, 355, 419, 355, 27, 430, 364, 27, 27, - 422, 27, 27, 27, 27, 27, 27, 27, 27, 27, - 424, 27, 27, 428, 27, 27, 429, 419, 419, 419, - 419, 419, 419, 419, 419, 419, 419, 419, 589, 589, - 419, 419, 346, 346, 419, 419, 589, 27, 437, 431, - 27, 27, 463, 27, 464, 364, 27, 364, 27, 419, - 27, 419, 27, 419, 419, 419, 419, 419, 419, 419, - 27, 419, 561, 561, 379, 27, 27, 27, 27, 27, - 27, 379, 720, 720, 27, 27, 628, 419, 465, 419, - 431, 466, 27, 858, 589, 27, 589, 499, 858, 431, - 27, 27, 30, 30, 30, 30, 30, 855, 855, 858, - 30, 30, 949, 949, 502, 30, 503, 30, 30, 30, - 30, 30, 30, 30, 509, 513, 514, 628, 517, 30, - 30, 30, 30, 30, 30, 30, 628, 519, 30, 526, - 858, 858, 858, 858, 30, 30, 462, 30, 30, 30, - 529, 30, 30, 30, 30, 30, 538, 30, 30, 30, - 539, 30, 30, 540, 30, 30, 553, 19, 19, 19, - 19, 19, 19, 19, 19, 19, 19, 19, 462, 858, - 19, 19, 462, 462, 19, 19, 564, 30, 568, 573, - 30, 579, 580, 30, 619, 626, 30, 632, 30, 19, - 637, 19, 30, 19, 19, 19, 19, 19, 19, 19, - 30, 19, 640, 711, 711, 30, 30, 30, 30, 30, - 30, 711, 646, 647, 30, 30, 655, 19, 657, 31, - 31, 31, 30, 31, 669, 30, 673, 31, 31, 676, - 30, 30, 31, 683, 31, 31, 31, 31, 31, 31, - 31, 555, 685, 688, 691, 692, 31, 31, 31, 31, - 31, 31, 31, 693, 696, 31, 840, 840, 697, 711, - 699, 711, 31, 704, 840, 31, 31, 705, 31, 31, - 31, 31, 31, 708, 31, 31, 31, 710, 31, 31, - 712, 652, 713, 652, 652, 652, 714, 652, 555, 555, - 555, 555, 717, 768, 768, 739, 739, 768, 768, 768, - 722, 728, 730, 739, 31, 732, 737, 31, 739, 741, - 31, 742, 840, 31, 840, 31, 753, 757, 758, 760, - 652, 761, 939, 762, 764, 767, 774, 939, 652, 652, - 652, 652, 31, 31, 31, 31, 31, 31, 939, 652, - 795, 31, 31, 796, 799, 801, 32, 32, 32, 31, - 32, 739, 31, 739, 32, 32, 804, 31, 31, 32, - 805, 32, 32, 32, 32, 32, 32, 32, 824, 939, - 939, 939, 939, 32, 32, 32, 32, 32, 32, 32, - 925, 925, 32, 680, 680, 680, 680, 680, 925, 32, - 480, 806, 32, 32, 811, 32, 32, 32, 32, 32, - 814, 32, 32, 32, 815, 32, 32, 600, 939, 600, - 600, 600, 600, 600, 830, 824, 824, 824, 824, 833, - 843, 846, 480, 600, 847, 848, 480, 480, 480, 480, - 870, 32, 871, 882, 32, 892, 925, 32, 925, 569, - 32, 569, 569, 569, 893, 569, 600, 600, 898, 899, - 907, 909, 912, 913, 600, 600, 600, 600, 914, 32, - 32, 32, 32, 32, 32, 915, 926, 936, 32, 32, - 944, 953, 955, 32, 956, 958, 32, nil, nil, 32, - nil, nil, nil, nil, 32, 32, 38, 38, 38, 481, - 38, nil, nil, 600, 38, 38, nil, nil, nil, 38, - nil, 38, 38, 38, 38, 38, 38, 38, nil, nil, - nil, nil, nil, 38, 38, 38, 38, 38, 38, 38, - nil, 481, 38, nil, nil, 481, 481, 481, 481, 38, - nil, nil, 38, 38, nil, 38, 38, 38, 38, 38, - nil, 38, 38, 38, nil, 38, 38, nil, 38, 38, - nil, 249, 249, 249, 249, 249, 249, 249, 249, 249, - 249, 249, nil, nil, 249, 249, nil, nil, 249, 249, - nil, 38, nil, nil, 38, nil, nil, 38, nil, nil, - 38, nil, nil, 249, nil, 249, 38, 249, 249, 249, - 249, 249, 249, 249, 38, 249, nil, nil, nil, 38, - 38, 38, 38, 38, 38, nil, nil, nil, 38, 38, - nil, 249, nil, 39, 39, 39, 38, 39, nil, 38, - nil, 39, 39, nil, 38, 38, 39, nil, 39, 39, - 39, 39, 39, 39, 39, nil, nil, nil, nil, nil, - 39, 39, 39, 39, 39, 39, 39, nil, 829, 39, - 829, 829, 829, nil, 829, nil, 39, nil, nil, 39, - 39, nil, 39, 39, 39, 39, 39, nil, 39, 39, - 39, nil, 39, 39, nil, 39, 39, nil, 427, 427, - 427, 427, 427, 427, 427, 427, 427, 427, 427, nil, - nil, 427, 427, nil, nil, 427, 427, nil, 39, nil, - nil, 39, nil, nil, 39, nil, nil, 39, nil, nil, - 427, nil, 427, 39, 427, 427, 427, 427, 427, 427, - 427, 39, 427, nil, nil, nil, 39, 39, 39, 39, - 39, 39, nil, nil, nil, 39, 39, nil, 427, nil, - 40, 40, 40, 39, 40, nil, 39, nil, 40, 40, - nil, 39, 39, 40, nil, 40, 40, 40, 40, 40, - 40, 40, nil, nil, nil, nil, nil, 40, 40, 40, - 40, 40, 40, 40, nil, nil, 40, nil, nil, nil, - nil, nil, nil, 40, nil, nil, 40, 40, nil, 40, - 40, 40, 40, 40, nil, 40, 40, 40, nil, 40, - 40, nil, 40, 40, nil, 446, 446, 446, 446, 446, - 446, 446, 446, 446, 446, 446, nil, nil, 446, 446, - nil, nil, 446, 446, nil, 40, nil, nil, 40, nil, - nil, 40, nil, nil, 40, nil, nil, 446, nil, 446, - 40, 446, 446, 446, 446, 446, 446, 446, 40, 446, - nil, nil, nil, 40, 40, 40, 40, 40, 40, nil, - nil, nil, 40, 40, nil, 446, nil, 52, 52, 52, - 40, 52, nil, 40, nil, 52, 52, nil, 40, 40, - 52, nil, 52, 52, 52, 52, 52, 52, 52, nil, - nil, nil, nil, nil, 52, 52, 52, 52, 52, 52, - 52, nil, nil, 52, nil, nil, nil, nil, nil, nil, - 52, nil, nil, 52, 52, nil, 52, 52, 52, 52, - 52, nil, 52, 52, 52, nil, 52, 52, nil, 52, - 52, nil, 536, 536, 536, 536, 536, 536, 536, 536, - 536, 536, 536, nil, nil, 536, 536, nil, nil, 536, - 536, nil, 52, nil, nil, 52, nil, nil, 52, nil, - nil, 52, nil, nil, 536, nil, 536, 52, 536, 536, - 536, 536, 536, 536, 536, 52, 536, nil, nil, nil, - 52, 52, 52, 52, 52, 52, nil, nil, nil, 52, - 52, nil, 536, nil, 53, 53, 53, 52, 53, nil, - 52, nil, 53, 53, nil, 52, 52, 53, nil, 53, - 53, 53, 53, 53, 53, 53, nil, nil, nil, nil, - nil, 53, 53, 53, 53, 53, 53, 53, nil, nil, - 53, nil, nil, nil, nil, nil, nil, 53, nil, nil, - 53, 53, nil, 53, 53, 53, 53, 53, 53, 53, - 53, 53, nil, 53, 53, nil, 53, 53, nil, 695, - 695, 695, 695, 695, 695, 695, 695, 695, 695, 695, - nil, nil, 695, 695, nil, nil, 695, 695, nil, 53, - nil, nil, 53, nil, nil, 53, nil, nil, 53, nil, - 53, 695, nil, 695, 53, 695, 695, 695, 695, 695, - 695, 695, 53, 695, nil, nil, nil, 53, 53, 53, - 53, 53, 53, nil, nil, nil, 53, 53, nil, 695, - nil, 54, 54, 54, 53, 54, nil, 53, nil, 54, - 54, nil, 53, 53, 54, nil, 54, 54, 54, 54, - 54, 54, 54, nil, nil, nil, nil, nil, 54, 54, - 54, 54, 54, 54, 54, nil, nil, 54, nil, nil, - nil, nil, nil, nil, 54, nil, nil, 54, 54, nil, - 54, 54, 54, 54, 54, 54, 54, 54, 54, nil, - 54, 54, nil, 54, 54, nil, 773, 773, 773, 773, - 773, 773, 773, 773, 773, 773, 773, nil, nil, 773, - 773, nil, nil, 773, 773, nil, 54, nil, nil, 54, - nil, nil, 54, nil, nil, 54, nil, nil, 773, nil, - 773, 54, 773, 773, 773, 773, 773, 773, 773, 54, - 773, nil, nil, nil, 54, 54, 54, 54, 54, 54, - nil, nil, nil, 54, 54, nil, 773, nil, 57, 57, - 57, 54, 57, nil, 54, nil, 57, 57, nil, 54, - 54, 57, nil, 57, 57, 57, 57, 57, 57, 57, - nil, nil, nil, nil, nil, 57, 57, 57, 57, 57, - 57, 57, nil, nil, 57, nil, nil, nil, nil, nil, - nil, 57, nil, nil, 57, 57, nil, 57, 57, 57, - 57, 57, nil, 57, 57, 57, nil, 57, 57, nil, - 57, 57, nil, 779, 779, 779, 779, 779, 779, 779, - 779, 779, 779, 779, nil, nil, 779, 779, nil, nil, - 779, 779, nil, 57, nil, nil, 57, nil, nil, 57, - nil, nil, 57, nil, nil, 779, nil, 779, 57, 779, - 779, 779, 779, 779, 779, 779, 57, 779, nil, nil, - nil, 57, 57, 57, 57, 57, 57, nil, nil, nil, - 57, 57, nil, 779, nil, 58, 58, 58, 57, 58, - nil, 57, nil, 58, 58, nil, 57, 57, 58, nil, - 58, 58, 58, 58, 58, 58, 58, nil, nil, nil, - nil, nil, 58, 58, 58, 58, 58, 58, 58, nil, - nil, 58, nil, nil, nil, nil, nil, nil, 58, nil, - nil, 58, 58, nil, 58, 58, 58, 58, 58, nil, - 58, 58, 58, nil, 58, 58, nil, 58, 58, nil, - 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, - 781, nil, nil, 781, 781, nil, nil, 781, 781, nil, - 58, nil, nil, 58, nil, nil, 58, nil, nil, 58, - nil, nil, 781, nil, 781, 58, 781, 781, 781, 781, - 781, 781, 781, 58, 781, nil, nil, nil, 58, 58, - 58, 58, 58, 58, nil, nil, nil, 58, 58, nil, - 781, nil, 61, 61, 61, 58, 61, nil, 58, nil, - 61, 61, nil, 58, 58, 61, nil, 61, 61, 61, - 61, 61, 61, 61, nil, nil, nil, nil, nil, 61, - 61, 61, 61, 61, 61, 61, nil, nil, 61, nil, - nil, nil, nil, nil, nil, 61, nil, nil, 61, 61, - nil, 61, 61, 61, 61, 61, nil, 61, 61, 61, - nil, 61, 61, nil, 61, 61, nil, 672, 672, 672, - 672, 672, 672, 672, 672, 672, 672, 672, nil, nil, - 672, 672, nil, nil, 672, 672, nil, 61, nil, nil, - 61, nil, nil, 61, nil, nil, 61, nil, nil, 672, - nil, 672, 61, 672, 672, 672, 672, 672, 672, 672, - 61, 672, nil, nil, nil, 61, 61, 61, 61, 61, - 61, nil, nil, nil, 61, 61, 61, 672, nil, 672, - nil, 61, 61, nil, nil, 61, nil, nil, nil, nil, - 61, 61, 62, 62, 62, nil, 62, nil, nil, nil, - 62, 62, nil, nil, nil, 62, nil, 62, 62, 62, - 62, 62, 62, 62, nil, nil, nil, nil, nil, 62, - 62, 62, 62, 62, 62, 62, nil, nil, 62, nil, - nil, nil, nil, nil, nil, 62, nil, nil, 62, 62, - nil, 62, 62, 62, 62, 62, nil, 62, 62, 62, - nil, 62, 62, 784, 784, 784, 784, 784, 784, 784, - 784, 784, 784, 784, 467, nil, 784, 784, nil, nil, - 784, 784, nil, nil, nil, nil, nil, 62, nil, nil, - 62, 467, 467, 62, nil, 784, 62, 784, 62, 784, - 784, 784, 784, 784, 784, 784, 467, 784, 467, nil, - 467, 467, 467, 467, nil, 62, 62, 62, 62, 62, - 62, nil, nil, 784, 62, 62, nil, nil, nil, 63, - 63, 63, 62, 63, nil, 62, nil, 63, 63, nil, - 62, 62, 63, nil, 63, 63, 63, 63, 63, 63, - 63, nil, nil, nil, nil, nil, 63, 63, 63, 63, - 63, 63, 63, nil, nil, 63, nil, nil, nil, nil, - nil, nil, 63, nil, nil, 63, 63, nil, 63, 63, - 63, 63, 63, nil, 63, 63, 63, nil, 63, 63, - 786, 786, 786, 786, 786, 786, 786, 786, 786, 786, - 786, 468, nil, 786, 786, nil, nil, 786, 786, nil, - nil, 63, nil, nil, 63, nil, nil, 63, 468, 468, - 63, nil, 786, 63, 786, nil, 786, 786, 786, 786, - 786, 786, 786, 468, 786, 468, nil, 468, 468, 468, - 468, nil, 63, 63, 63, 63, 63, 63, nil, nil, - 786, 63, 63, nil, nil, nil, 84, 84, 84, 63, - 84, nil, 63, nil, 84, 84, nil, 63, 63, 84, - nil, 84, 84, 84, 84, 84, 84, 84, nil, 84, - nil, nil, nil, 84, 84, 84, 84, 84, 84, 84, - nil, nil, 84, nil, nil, nil, nil, nil, nil, 84, - nil, nil, 84, 84, nil, 84, 84, 84, 84, 84, - 84, 84, 84, 84, nil, 84, 84, nil, 84, 84, - nil, 793, 793, 793, 793, 793, 793, 793, 793, 793, - 793, 793, nil, nil, 793, 793, nil, nil, 793, 793, - nil, 84, nil, nil, 84, 84, nil, 84, nil, nil, - 84, nil, 84, 793, 84, 793, 84, 793, 793, 793, - 793, 793, 793, 793, 84, 793, 84, nil, nil, 84, - 84, 84, 84, 84, 84, nil, nil, nil, 84, 84, - nil, 793, nil, 87, 87, 87, 84, 87, nil, 84, - nil, 87, 87, nil, 84, 84, 87, nil, 87, 87, - 87, 87, 87, 87, 87, nil, 87, nil, nil, nil, - 87, 87, 87, 87, 87, 87, 87, nil, nil, 87, - nil, nil, nil, nil, nil, nil, 87, nil, nil, 87, - 87, nil, 87, 87, 87, 87, 87, 87, 87, 87, - 87, nil, 87, 87, nil, 87, 87, nil, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, nil, - nil, 873, 873, nil, nil, 873, 873, nil, 87, nil, - nil, 87, 87, nil, 87, nil, nil, 87, nil, 87, - 873, 87, 873, 87, 873, 873, 873, 873, 873, 873, - 873, 87, 873, 87, nil, nil, 87, 87, 87, 87, - 87, 87, nil, nil, nil, 87, 87, nil, 873, nil, - nil, nil, nil, 87, nil, nil, 87, nil, nil, nil, - nil, 87, 87, 99, 99, 99, 99, 99, nil, nil, - nil, 99, 99, nil, nil, nil, 99, nil, 99, 99, - 99, 99, 99, 99, 99, nil, nil, nil, nil, nil, - 99, 99, 99, 99, 99, 99, 99, nil, nil, 99, - nil, nil, nil, nil, nil, 99, 99, 99, 99, 99, - 99, nil, 99, 99, 99, 99, 99, nil, 99, 99, - 99, nil, 99, 99, nil, 99, 99, nil, 875, 875, - 875, 875, 875, 875, 875, 875, 875, 875, 875, nil, - nil, 875, 875, nil, nil, 875, 875, nil, 99, nil, - nil, 99, nil, nil, 99, nil, nil, 99, nil, 99, - 875, nil, 875, 99, 875, 875, 875, 875, 875, 875, - 875, 99, 875, nil, nil, nil, 99, 99, 99, 99, - 99, 99, nil, nil, nil, 99, 99, nil, 875, nil, - nil, nil, 99, 99, nil, nil, 99, nil, nil, nil, - nil, 99, 99, 103, 103, 103, nil, 103, nil, nil, - nil, 103, 103, nil, nil, nil, 103, nil, 103, 103, - 103, 103, 103, 103, 103, nil, nil, nil, nil, nil, - 103, 103, 103, 103, 103, 103, 103, nil, 338, 103, - 338, 338, 338, nil, 338, nil, 103, nil, nil, 103, - 103, nil, 103, 103, 103, 103, 103, nil, 103, 103, - 103, nil, 103, 103, nil, 103, 103, 566, nil, 566, - 566, 566, nil, 566, nil, nil, 718, 338, 718, 718, - 718, nil, 718, nil, nil, 338, nil, nil, 103, nil, - nil, 103, nil, nil, 103, nil, nil, 103, nil, nil, - nil, nil, nil, 103, nil, nil, 566, nil, nil, nil, - nil, 103, nil, nil, 566, 718, 103, 103, 103, 103, - 103, 103, nil, 718, nil, 103, 103, nil, nil, nil, - 104, 104, 104, 103, 104, nil, 103, nil, 104, 104, - nil, 103, 103, 104, nil, 104, 104, 104, 104, 104, - 104, 104, nil, nil, nil, nil, nil, 104, 104, 104, - 104, 104, 104, 104, nil, nil, 104, nil, nil, nil, - nil, nil, nil, 104, nil, nil, 104, 104, nil, 104, - 104, 104, 104, 104, nil, 104, 104, 104, nil, 104, - 104, nil, 104, 104, nil, 459, 459, 459, 459, 459, - 459, 459, 459, 459, 459, 459, nil, nil, 459, 459, - nil, nil, 459, 459, nil, 104, nil, nil, 104, nil, - nil, 104, nil, nil, 104, nil, nil, 459, nil, 459, - 104, 459, 459, 459, 459, 459, 459, 459, 104, 459, - nil, nil, nil, 104, 104, 104, 104, 104, 104, nil, - nil, nil, 104, 104, nil, nil, nil, 105, 105, 105, - 104, 105, nil, 104, nil, 105, 105, nil, 104, 104, - 105, nil, 105, 105, 105, 105, 105, 105, 105, nil, - nil, nil, nil, nil, 105, 105, 105, 105, 105, 105, - 105, nil, nil, 105, nil, nil, nil, nil, nil, nil, - 105, nil, nil, 105, 105, nil, 105, 105, 105, 105, - 105, nil, 105, 105, 105, nil, 105, 105, nil, 105, - 105, nil, 460, 460, 460, 460, 460, 460, 460, 460, - 460, 460, 460, nil, nil, 460, 460, nil, nil, 460, - 460, nil, 105, nil, nil, 105, nil, nil, 105, nil, - nil, 105, nil, nil, 460, nil, 460, 105, 460, 460, - 460, 460, 460, 460, 460, 105, 460, nil, nil, nil, - 105, 105, 105, 105, 105, 105, nil, nil, nil, 105, - 105, nil, nil, nil, 106, 106, 106, 105, 106, nil, - 105, nil, 106, 106, nil, 105, 105, 106, nil, 106, - 106, 106, 106, 106, 106, 106, nil, nil, nil, nil, - nil, 106, 106, 106, 106, 106, 106, 106, nil, nil, - 106, nil, nil, nil, nil, nil, nil, 106, nil, nil, - 106, 106, nil, 106, 106, 106, 106, 106, nil, 106, - 106, 106, nil, 106, 106, nil, 106, 106, nil, 470, - 470, 470, 470, 470, 470, 470, nil, nil, 470, 470, - nil, nil, nil, nil, nil, nil, 470, 470, nil, 106, - nil, nil, 106, nil, nil, 106, nil, nil, 106, nil, - nil, 470, nil, 470, 106, 470, 470, 470, 470, 470, - 470, 470, 106, 470, nil, nil, nil, 106, 106, 106, - 106, 106, 106, nil, nil, nil, 106, 106, nil, nil, - nil, nil, nil, nil, 106, nil, nil, 106, nil, nil, - nil, nil, 106, 106, 107, 107, 107, 107, 107, nil, - nil, nil, 107, 107, nil, nil, nil, 107, nil, 107, - 107, 107, 107, 107, 107, 107, nil, nil, nil, nil, - nil, 107, 107, 107, 107, 107, 107, 107, nil, nil, - 107, nil, nil, nil, nil, nil, 107, 107, nil, 107, - 107, 107, nil, 107, 107, 107, 107, 107, nil, 107, - 107, 107, nil, 107, 107, nil, 107, 107, nil, 471, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 471, 471, nil, 107, - nil, nil, 107, nil, nil, 107, nil, nil, 107, nil, - 107, 471, nil, 471, 107, 471, 471, 471, 471, nil, - nil, 471, 107, 471, nil, nil, nil, 107, 107, 107, - 107, 107, 107, nil, nil, nil, 107, 107, nil, nil, - nil, nil, nil, nil, 107, nil, nil, 107, nil, nil, - nil, nil, 107, 107, 108, 108, 108, 108, 108, nil, - nil, nil, 108, 108, nil, nil, nil, 108, nil, 108, - 108, 108, 108, 108, 108, 108, nil, nil, nil, nil, - nil, 108, 108, 108, 108, 108, 108, 108, nil, nil, - 108, nil, nil, nil, nil, nil, 108, 108, 108, 108, - 108, 108, nil, 108, 108, 108, 108, 108, nil, 108, - 108, 108, nil, 108, 108, nil, 108, 108, nil, 472, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 472, 472, nil, 108, - nil, nil, 108, nil, nil, 108, nil, nil, 108, nil, - 108, 472, nil, 472, 108, 472, 472, 472, 472, nil, - nil, 472, 108, 472, nil, nil, nil, 108, 108, 108, - 108, 108, 108, nil, nil, nil, 108, 108, nil, nil, - nil, nil, nil, nil, 108, nil, nil, 108, nil, nil, - nil, nil, 108, 108, 195, 195, 195, 195, 195, nil, - nil, nil, 195, 195, nil, nil, nil, 195, nil, 195, - 195, 195, 195, 195, 195, 195, nil, nil, nil, nil, - nil, 195, 195, 195, 195, 195, 195, 195, nil, nil, - 195, nil, nil, nil, nil, nil, 195, 195, nil, 195, - 195, 195, nil, 195, 195, 195, 195, 195, nil, 195, - 195, 195, nil, 195, 195, nil, 195, 195, nil, 473, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 473, 473, nil, 195, - nil, nil, 195, nil, nil, 195, nil, nil, 195, nil, - 195, 473, nil, 473, 195, 473, 473, 473, 473, nil, - nil, 473, 195, 473, nil, nil, nil, 195, 195, 195, - 195, 195, 195, nil, nil, nil, 195, 195, nil, nil, - nil, 196, 196, 196, 195, 196, nil, 195, nil, 196, - 196, nil, 195, 195, 196, nil, 196, 196, 196, 196, - 196, 196, 196, nil, nil, nil, nil, nil, 196, 196, - 196, 196, 196, 196, 196, nil, nil, 196, nil, nil, - nil, nil, nil, nil, 196, nil, nil, 196, 196, nil, - 196, 196, 196, 196, 196, nil, 196, 196, 196, nil, - 196, 196, nil, 196, 196, nil, 474, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 474, 474, nil, 196, nil, nil, 196, - nil, nil, 196, nil, nil, 196, nil, 196, 474, nil, - 474, 196, 474, 474, 474, 474, nil, nil, 474, 196, - 474, nil, nil, nil, 196, 196, 196, 196, 196, 196, - nil, nil, nil, 196, 196, nil, nil, nil, 197, 197, - 197, 196, 197, nil, 196, nil, 197, 197, nil, 196, - 196, 197, nil, 197, 197, 197, 197, 197, 197, 197, - nil, nil, nil, nil, nil, 197, 197, 197, 197, 197, - 197, 197, nil, nil, 197, nil, nil, nil, nil, nil, - nil, 197, nil, nil, 197, 197, nil, 197, 197, 197, - 197, 197, nil, 197, 197, 197, nil, 197, 197, nil, - 197, 197, nil, 475, 475, 475, 475, 475, 475, 475, - nil, nil, 475, 475, nil, nil, nil, nil, nil, nil, - 475, 475, nil, 197, nil, nil, 197, nil, nil, 197, - nil, nil, 197, nil, 197, 475, nil, 475, 197, 475, - 475, 475, 475, 475, 475, 475, 197, 475, nil, nil, - nil, 197, 197, 197, 197, 197, 197, nil, nil, nil, - 197, 197, nil, nil, nil, 198, 198, 198, 197, 198, - nil, 197, nil, 198, 198, nil, 197, 197, 198, nil, - 198, 198, 198, 198, 198, 198, 198, nil, nil, nil, - nil, nil, 198, 198, 198, 198, 198, 198, 198, nil, - nil, 198, nil, nil, nil, nil, nil, nil, 198, nil, - nil, 198, 198, nil, 198, 198, 198, 198, 198, nil, - 198, 198, 198, nil, 198, 198, nil, 198, 198, nil, - 476, 476, 476, 476, 476, 476, 476, nil, nil, 476, - 476, nil, nil, nil, nil, nil, nil, 476, 476, nil, - 198, nil, nil, 198, nil, nil, 198, nil, nil, 198, - nil, nil, 476, nil, 476, 198, 476, 476, 476, 476, - 476, 476, 476, 198, 476, nil, nil, nil, 198, 198, - 198, 198, 198, 198, nil, nil, nil, 198, 198, nil, - nil, nil, 199, 199, 199, 198, 199, nil, 198, nil, - 199, 199, nil, 198, 198, 199, nil, 199, 199, 199, - 199, 199, 199, 199, nil, nil, nil, nil, nil, 199, - 199, 199, 199, 199, 199, 199, nil, nil, 199, nil, - nil, nil, nil, nil, nil, 199, nil, nil, 199, 199, - nil, 199, 199, 199, 199, 199, 199, 199, 199, 199, - nil, 199, 199, nil, 199, 199, nil, 477, 477, 477, - 477, 477, 477, 477, nil, nil, 477, 477, nil, nil, - nil, nil, nil, nil, 477, 477, nil, 199, nil, nil, - 199, nil, nil, 199, nil, nil, 199, nil, 199, 477, - nil, 477, 199, 477, 477, 477, 477, 477, 477, 477, - 199, 477, nil, nil, nil, 199, 199, 199, 199, 199, - 199, nil, nil, nil, 199, 199, nil, nil, nil, 200, - 200, 200, 199, 200, nil, 199, nil, 200, 200, nil, - 199, 199, 200, nil, 200, 200, 200, 200, 200, 200, - 200, nil, nil, nil, nil, nil, 200, 200, 200, 200, - 200, 200, 200, nil, nil, 200, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 200, 200, nil, 200, 200, - 200, 200, 200, 200, 200, 200, 200, nil, 200, 200, - nil, 200, 200, nil, 478, 478, 478, 478, 478, 478, - 478, nil, nil, 478, 478, nil, nil, nil, nil, nil, - nil, 478, 478, nil, 200, nil, nil, 200, nil, nil, - 200, nil, nil, 200, nil, 200, 478, nil, 478, 200, - 478, 478, 478, 478, 478, 478, 478, 200, 478, nil, - nil, nil, 200, 200, 200, 200, 200, 200, nil, nil, - nil, 200, 200, nil, nil, nil, 204, 204, 204, 200, - 204, nil, 200, nil, 204, 204, nil, 200, 200, 204, - nil, 204, 204, 204, 204, 204, 204, 204, nil, nil, - nil, nil, nil, 204, 204, 204, 204, 204, 204, 204, - nil, nil, 204, nil, nil, nil, nil, nil, nil, 204, - nil, nil, 204, 204, nil, 204, 204, 204, 204, 204, - nil, 204, 204, 204, nil, 204, 204, nil, 204, 204, - nil, 479, 479, 479, 479, 479, 479, 479, nil, nil, - 479, 479, nil, nil, nil, nil, nil, nil, 479, 479, - nil, 204, nil, nil, 204, nil, nil, 204, nil, nil, - 204, nil, nil, 479, nil, 479, 204, 479, 479, 479, - 479, 479, 479, 479, 204, 479, nil, nil, nil, 204, - 204, 204, 204, 204, 204, nil, nil, nil, 204, 204, - nil, nil, nil, 205, 205, 205, 204, 205, nil, 204, - nil, 205, 205, nil, 204, 204, 205, nil, 205, 205, - 205, 205, 205, 205, 205, nil, nil, nil, nil, nil, - 205, 205, 205, 205, 205, 205, 205, nil, nil, 205, - nil, nil, nil, nil, nil, nil, 205, nil, nil, 205, - 205, nil, 205, 205, 205, 205, 205, nil, 205, 205, - 205, nil, 205, 205, nil, 205, 205, nil, 482, 482, - 482, 482, 482, 482, 482, nil, nil, 482, 482, nil, - nil, nil, nil, nil, nil, 482, 482, nil, 205, nil, - nil, 205, nil, nil, 205, nil, nil, 205, nil, nil, - 482, nil, 482, 205, 482, 482, 482, 482, 482, 482, - 482, 205, 482, nil, nil, nil, 205, 205, 205, 205, - 205, 205, nil, nil, nil, 205, 205, nil, nil, nil, - 206, 206, 206, 205, 206, nil, 205, nil, 206, 206, - nil, 205, 205, 206, nil, 206, 206, 206, 206, 206, - 206, 206, nil, nil, nil, nil, nil, 206, 206, 206, - 206, 206, 206, 206, nil, nil, 206, nil, nil, nil, - nil, nil, nil, 206, nil, nil, 206, 206, nil, 206, - 206, 206, 206, 206, nil, 206, 206, 206, nil, 206, - 206, nil, 206, 206, nil, 483, 483, 483, 483, 483, - 483, 483, 483, nil, 483, 483, nil, nil, nil, nil, - nil, nil, 483, 483, nil, 206, nil, nil, 206, nil, - nil, 206, nil, nil, 206, nil, nil, 483, nil, 483, - 206, 483, 483, 483, 483, 483, 483, 483, 206, 483, - nil, nil, nil, 206, 206, 206, 206, 206, 206, nil, - nil, nil, 206, 206, nil, nil, nil, nil, nil, nil, - 206, nil, nil, 206, nil, nil, nil, nil, 206, 206, - 214, 214, 214, 214, 214, nil, nil, nil, 214, 214, - nil, nil, nil, 214, nil, 214, 214, 214, 214, 214, - 214, 214, nil, nil, nil, nil, nil, 214, 214, 214, - 214, 214, 214, 214, nil, nil, 214, nil, nil, nil, - nil, nil, 214, 214, nil, 214, 214, 214, nil, 214, - 214, 214, 214, 214, nil, 214, 214, 214, nil, 214, - 214, nil, 214, 214, nil, 469, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 469, 469, nil, 214, nil, nil, 214, nil, - nil, 214, nil, nil, 214, nil, 214, 469, nil, nil, - 214, 469, 469, 469, 469, nil, nil, nil, 214, nil, - nil, nil, nil, 214, 214, 214, 214, 214, 214, nil, - nil, nil, 214, 214, nil, nil, nil, 215, 215, 215, - 214, 215, nil, 214, nil, 215, 215, nil, 214, 214, - 215, nil, 215, 215, 215, 215, 215, 215, 215, nil, - nil, nil, nil, nil, 215, 215, 215, 215, 215, 215, - 215, nil, nil, 215, nil, nil, nil, nil, nil, nil, - 215, nil, nil, 215, 215, nil, 215, 215, 215, 215, - 215, nil, 215, 215, 215, nil, 215, 215, nil, 215, - 215, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 215, nil, nil, 215, nil, 215, 215, nil, - nil, 215, nil, nil, nil, nil, nil, 215, nil, nil, - nil, nil, nil, nil, nil, 215, nil, nil, nil, nil, - 215, 215, 215, 215, 215, 215, nil, nil, nil, 215, - 215, nil, nil, nil, 218, 218, 218, 215, 218, nil, - 215, nil, 218, 218, nil, 215, 215, 218, nil, 218, - 218, 218, 218, 218, 218, 218, nil, nil, nil, nil, - nil, 218, 218, 218, 218, 218, 218, 218, nil, nil, - 218, nil, nil, nil, nil, nil, nil, 218, nil, nil, - 218, 218, nil, 218, 218, 218, 218, 218, nil, 218, - 218, 218, nil, 218, 218, nil, 218, 218, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 218, - nil, nil, 218, nil, nil, 218, nil, nil, 218, nil, - nil, nil, nil, nil, 218, nil, nil, nil, nil, nil, - nil, nil, 218, nil, nil, nil, nil, 218, 218, 218, - 218, 218, 218, nil, nil, nil, 218, 218, nil, nil, - nil, 220, 220, 220, 218, 220, nil, 218, nil, 220, - 220, nil, 218, 218, 220, nil, 220, 220, 220, 220, - 220, 220, 220, nil, nil, nil, nil, nil, 220, 220, - 220, 220, 220, 220, 220, nil, nil, 220, nil, nil, - nil, nil, nil, nil, 220, nil, nil, 220, 220, nil, - 220, 220, 220, 220, 220, nil, 220, 220, 220, nil, - 220, 220, nil, 220, 220, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 220, nil, nil, 220, - nil, nil, 220, nil, nil, 220, nil, nil, nil, nil, - nil, 220, nil, nil, nil, nil, nil, nil, nil, 220, - nil, nil, nil, nil, 220, 220, 220, 220, 220, 220, - nil, nil, nil, 220, 220, nil, nil, nil, 221, 221, - 221, 220, 221, nil, 220, nil, 221, 221, nil, 220, - 220, 221, nil, 221, 221, 221, 221, 221, 221, 221, - nil, nil, nil, nil, nil, 221, 221, 221, 221, 221, - 221, 221, nil, nil, 221, nil, nil, nil, nil, nil, - nil, 221, nil, nil, 221, 221, nil, 221, 221, 221, - 221, 221, nil, 221, 221, 221, nil, 221, 221, nil, - 221, 221, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 221, nil, nil, 221, nil, nil, 221, - nil, nil, 221, nil, nil, nil, nil, nil, 221, nil, - nil, nil, nil, nil, nil, nil, 221, nil, nil, nil, - nil, 221, 221, 221, 221, 221, 221, nil, nil, nil, - 221, 221, nil, nil, nil, 222, 222, 222, 221, 222, - nil, 221, nil, 222, 222, nil, 221, 221, 222, nil, - 222, 222, 222, 222, 222, 222, 222, nil, nil, nil, - nil, nil, 222, 222, 222, 222, 222, 222, 222, nil, - nil, 222, nil, nil, nil, nil, nil, nil, 222, nil, - nil, 222, 222, nil, 222, 222, 222, 222, 222, nil, - 222, 222, 222, nil, 222, 222, nil, 222, 222, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 222, nil, nil, 222, nil, nil, 222, nil, nil, 222, - nil, nil, nil, nil, nil, 222, nil, nil, nil, nil, - nil, nil, nil, 222, nil, nil, nil, nil, 222, 222, - 222, 222, 222, 222, nil, nil, nil, 222, 222, nil, - nil, nil, 223, 223, 223, 222, 223, nil, 222, nil, - 223, 223, nil, 222, 222, 223, nil, 223, 223, 223, - 223, 223, 223, 223, nil, nil, nil, nil, nil, 223, - 223, 223, 223, 223, 223, 223, nil, nil, 223, nil, - nil, nil, nil, nil, nil, 223, nil, nil, 223, 223, - nil, 223, 223, 223, 223, 223, nil, 223, 223, 223, - nil, 223, 223, nil, 223, 223, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 223, nil, nil, - 223, nil, nil, 223, nil, nil, 223, nil, nil, nil, - nil, nil, 223, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, nil, nil, 223, 223, 223, 223, 223, - 223, nil, nil, nil, 223, 223, nil, nil, nil, 224, - 224, 224, 223, 224, nil, 223, nil, 224, 224, nil, - 223, 223, 224, nil, 224, 224, 224, 224, 224, 224, - 224, nil, nil, nil, nil, nil, 224, 224, 224, 224, - 224, 224, 224, nil, nil, 224, nil, nil, nil, nil, - nil, nil, 224, nil, nil, 224, 224, nil, 224, 224, - 224, 224, 224, nil, 224, 224, 224, nil, 224, 224, - nil, 224, 224, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 224, nil, nil, 224, nil, nil, - 224, nil, nil, 224, nil, nil, nil, nil, nil, 224, - nil, nil, nil, nil, nil, nil, nil, 224, nil, nil, - nil, nil, 224, 224, 224, 224, 224, 224, nil, nil, - nil, 224, 224, nil, nil, nil, 225, 225, 225, 224, - 225, nil, 224, nil, 225, 225, nil, 224, 224, 225, - nil, 225, 225, 225, 225, 225, 225, 225, nil, nil, - nil, nil, nil, 225, 225, 225, 225, 225, 225, 225, - nil, nil, 225, nil, nil, nil, nil, nil, nil, 225, - nil, nil, 225, 225, nil, 225, 225, 225, 225, 225, - nil, 225, 225, 225, nil, 225, 225, nil, 225, 225, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 225, nil, nil, 225, nil, nil, 225, nil, nil, - 225, nil, nil, nil, nil, nil, 225, nil, nil, nil, - nil, nil, nil, nil, 225, nil, nil, nil, nil, 225, - 225, 225, 225, 225, 225, nil, nil, nil, 225, 225, - nil, nil, nil, 226, 226, 226, 225, 226, nil, 225, - nil, 226, 226, nil, 225, 225, 226, nil, 226, 226, - 226, 226, 226, 226, 226, nil, nil, nil, nil, nil, - 226, 226, 226, 226, 226, 226, 226, nil, nil, 226, - nil, nil, nil, nil, nil, nil, 226, nil, nil, 226, - 226, nil, 226, 226, 226, 226, 226, nil, 226, 226, - 226, nil, 226, 226, nil, 226, 226, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 226, nil, - nil, 226, nil, nil, 226, nil, nil, 226, nil, nil, - nil, nil, nil, 226, nil, nil, nil, nil, nil, nil, - nil, 226, nil, nil, nil, nil, 226, 226, 226, 226, - 226, 226, nil, nil, nil, 226, 226, nil, nil, nil, - 227, 227, 227, 226, 227, nil, 226, nil, 227, 227, - nil, 226, 226, 227, nil, 227, 227, 227, 227, 227, - 227, 227, nil, nil, nil, nil, nil, 227, 227, 227, - 227, 227, 227, 227, nil, nil, 227, nil, nil, nil, - nil, nil, nil, 227, nil, nil, 227, 227, nil, 227, - 227, 227, 227, 227, nil, 227, 227, 227, nil, 227, - 227, nil, 227, 227, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 227, nil, nil, 227, nil, - nil, 227, nil, nil, 227, nil, nil, nil, nil, nil, - 227, nil, nil, nil, nil, nil, nil, nil, 227, nil, - nil, nil, nil, 227, 227, 227, 227, 227, 227, nil, - nil, nil, 227, 227, nil, nil, nil, 228, 228, 228, - 227, 228, nil, 227, nil, 228, 228, nil, 227, 227, - 228, nil, 228, 228, 228, 228, 228, 228, 228, nil, - nil, nil, nil, nil, 228, 228, 228, 228, 228, 228, - 228, nil, nil, 228, nil, nil, nil, nil, nil, nil, - 228, nil, nil, 228, 228, nil, 228, 228, 228, 228, - 228, nil, 228, 228, 228, nil, 228, 228, nil, 228, - 228, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 228, nil, nil, 228, nil, nil, 228, nil, - nil, 228, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 228, 228, 228, 228, 228, 228, nil, nil, nil, 228, - 228, nil, nil, nil, 229, 229, 229, 228, 229, nil, - 228, nil, 229, 229, nil, 228, 228, 229, nil, 229, - 229, 229, 229, 229, 229, 229, nil, nil, nil, nil, - nil, 229, 229, 229, 229, 229, 229, 229, nil, nil, - 229, nil, nil, nil, nil, nil, nil, 229, nil, nil, - 229, 229, nil, 229, 229, 229, 229, 229, nil, 229, - 229, 229, nil, 229, 229, nil, 229, 229, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 229, - nil, nil, 229, nil, nil, 229, nil, nil, 229, nil, - nil, nil, nil, nil, 229, nil, nil, nil, nil, nil, - nil, nil, 229, nil, nil, nil, nil, 229, 229, 229, - 229, 229, 229, nil, nil, nil, 229, 229, nil, nil, - nil, 230, 230, 230, 229, 230, nil, 229, nil, 230, - 230, nil, 229, 229, 230, nil, 230, 230, 230, 230, - 230, 230, 230, nil, nil, nil, nil, nil, 230, 230, - 230, 230, 230, 230, 230, nil, nil, 230, nil, nil, - nil, nil, nil, nil, 230, nil, nil, 230, 230, nil, - 230, 230, 230, 230, 230, nil, 230, 230, 230, nil, - 230, 230, nil, 230, 230, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 230, nil, nil, 230, - nil, nil, 230, nil, nil, 230, nil, nil, nil, nil, - nil, 230, nil, nil, nil, nil, nil, nil, nil, 230, - nil, nil, nil, nil, 230, 230, 230, 230, 230, 230, - nil, nil, nil, 230, 230, nil, nil, nil, 231, 231, - 231, 230, 231, nil, 230, nil, 231, 231, nil, 230, - 230, 231, nil, 231, 231, 231, 231, 231, 231, 231, - nil, nil, nil, nil, nil, 231, 231, 231, 231, 231, - 231, 231, nil, nil, 231, nil, nil, nil, nil, nil, - nil, 231, nil, nil, 231, 231, nil, 231, 231, 231, - 231, 231, nil, 231, 231, 231, nil, 231, 231, nil, - 231, 231, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 231, nil, nil, 231, nil, nil, 231, - nil, nil, 231, nil, nil, nil, nil, nil, 231, nil, - nil, nil, nil, nil, nil, nil, 231, nil, nil, nil, - nil, 231, 231, 231, 231, 231, 231, nil, nil, nil, - 231, 231, nil, nil, nil, 232, 232, 232, 231, 232, - nil, 231, nil, 232, 232, nil, 231, 231, 232, nil, - 232, 232, 232, 232, 232, 232, 232, nil, nil, nil, - nil, nil, 232, 232, 232, 232, 232, 232, 232, nil, - nil, 232, nil, nil, nil, nil, nil, nil, 232, nil, - nil, 232, 232, nil, 232, 232, 232, 232, 232, nil, - 232, 232, 232, nil, 232, 232, nil, 232, 232, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 232, nil, nil, 232, nil, nil, 232, nil, nil, 232, - nil, nil, nil, nil, nil, 232, nil, nil, nil, nil, - nil, nil, nil, 232, nil, nil, nil, nil, 232, 232, - 232, 232, 232, 232, nil, nil, nil, 232, 232, nil, - nil, nil, 233, 233, 233, 232, 233, nil, 232, nil, - 233, 233, nil, 232, 232, 233, nil, 233, 233, 233, - 233, 233, 233, 233, nil, nil, nil, nil, nil, 233, - 233, 233, 233, 233, 233, 233, nil, nil, 233, nil, - nil, nil, nil, nil, nil, 233, nil, nil, 233, 233, - nil, 233, 233, 233, 233, 233, nil, 233, 233, 233, - nil, 233, 233, nil, 233, 233, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 233, nil, nil, - 233, nil, nil, 233, nil, nil, 233, nil, nil, nil, - nil, nil, 233, nil, nil, nil, nil, nil, nil, nil, - 233, nil, nil, nil, nil, 233, 233, 233, 233, 233, - 233, nil, nil, nil, 233, 233, nil, nil, nil, 234, - 234, 234, 233, 234, nil, 233, nil, 234, 234, nil, - 233, 233, 234, nil, 234, 234, 234, 234, 234, 234, - 234, nil, nil, nil, nil, nil, 234, 234, 234, 234, - 234, 234, 234, nil, nil, 234, nil, nil, nil, nil, - nil, nil, 234, nil, nil, 234, 234, nil, 234, 234, - 234, 234, 234, nil, 234, 234, 234, nil, 234, 234, - nil, 234, 234, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 234, nil, nil, 234, nil, nil, - 234, nil, nil, 234, nil, nil, nil, nil, nil, 234, - nil, nil, nil, nil, nil, nil, nil, 234, nil, nil, - nil, nil, 234, 234, 234, 234, 234, 234, nil, nil, - nil, 234, 234, nil, nil, nil, 235, 235, 235, 234, - 235, nil, 234, nil, 235, 235, nil, 234, 234, 235, - nil, 235, 235, 235, 235, 235, 235, 235, nil, nil, - nil, nil, nil, 235, 235, 235, 235, 235, 235, 235, - nil, nil, 235, nil, nil, nil, nil, nil, nil, 235, - nil, nil, 235, 235, nil, 235, 235, 235, 235, 235, - nil, 235, 235, 235, nil, 235, 235, nil, 235, 235, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 235, nil, nil, 235, nil, nil, 235, nil, nil, - 235, nil, nil, nil, nil, nil, 235, nil, nil, nil, - nil, nil, nil, nil, 235, nil, nil, nil, nil, 235, - 235, 235, 235, 235, 235, nil, nil, nil, 235, 235, - nil, nil, nil, 236, 236, 236, 235, 236, nil, 235, - nil, 236, 236, nil, 235, 235, 236, nil, 236, 236, - 236, 236, 236, 236, 236, nil, nil, nil, nil, nil, - 236, 236, 236, 236, 236, 236, 236, nil, nil, 236, - nil, nil, nil, nil, nil, nil, 236, nil, nil, 236, - 236, nil, 236, 236, 236, 236, 236, nil, 236, 236, - 236, nil, 236, 236, nil, 236, 236, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 236, nil, - nil, 236, nil, nil, 236, nil, nil, 236, nil, nil, - nil, nil, nil, 236, nil, nil, nil, nil, nil, nil, - nil, 236, nil, nil, nil, nil, 236, 236, 236, 236, - 236, 236, nil, nil, nil, 236, 236, nil, nil, nil, - 237, 237, 237, 236, 237, nil, 236, nil, 237, 237, - nil, 236, 236, 237, nil, 237, 237, 237, 237, 237, - 237, 237, nil, nil, nil, nil, nil, 237, 237, 237, - 237, 237, 237, 237, nil, nil, 237, nil, nil, nil, - nil, nil, nil, 237, nil, nil, 237, 237, nil, 237, - 237, 237, 237, 237, nil, 237, 237, 237, nil, 237, - 237, nil, 237, 237, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 237, nil, nil, 237, nil, - nil, 237, nil, nil, 237, nil, nil, nil, nil, nil, - 237, nil, nil, nil, nil, nil, nil, nil, 237, nil, - nil, nil, nil, 237, 237, 237, 237, 237, 237, nil, - nil, nil, 237, 237, nil, nil, nil, 238, 238, 238, - 237, 238, nil, 237, nil, 238, 238, nil, 237, 237, - 238, nil, 238, 238, 238, 238, 238, 238, 238, nil, - nil, nil, nil, nil, 238, 238, 238, 238, 238, 238, - 238, nil, nil, 238, nil, nil, nil, nil, nil, nil, - 238, nil, nil, 238, 238, nil, 238, 238, 238, 238, - 238, nil, 238, 238, 238, nil, 238, 238, nil, 238, - 238, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 238, nil, nil, 238, nil, nil, 238, nil, - nil, 238, nil, nil, nil, nil, nil, 238, nil, nil, - nil, nil, nil, nil, nil, 238, nil, nil, nil, nil, - 238, 238, 238, 238, 238, 238, nil, nil, nil, 238, - 238, nil, nil, nil, 239, 239, 239, 238, 239, nil, - 238, nil, 239, 239, nil, 238, 238, 239, nil, 239, - 239, 239, 239, 239, 239, 239, nil, nil, nil, nil, - nil, 239, 239, 239, 239, 239, 239, 239, nil, nil, - 239, nil, nil, nil, nil, nil, nil, 239, nil, nil, - 239, 239, nil, 239, 239, 239, 239, 239, nil, 239, - 239, 239, nil, 239, 239, nil, 239, 239, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 239, - nil, nil, 239, nil, nil, 239, nil, nil, 239, nil, - nil, nil, nil, nil, 239, nil, nil, nil, nil, nil, - nil, nil, 239, nil, nil, nil, nil, 239, 239, 239, - 239, 239, 239, nil, nil, nil, 239, 239, nil, nil, - nil, 240, 240, 240, 239, 240, nil, 239, nil, 240, - 240, nil, 239, 239, 240, nil, 240, 240, 240, 240, - 240, 240, 240, nil, nil, nil, nil, nil, 240, 240, - 240, 240, 240, 240, 240, nil, nil, 240, nil, nil, - nil, nil, nil, nil, 240, nil, nil, 240, 240, nil, - 240, 240, 240, 240, 240, nil, 240, 240, 240, nil, - 240, 240, nil, 240, 240, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 240, nil, nil, 240, - nil, nil, 240, nil, nil, 240, nil, nil, nil, nil, - nil, 240, nil, nil, nil, nil, nil, nil, nil, 240, - nil, nil, nil, nil, 240, 240, 240, 240, 240, 240, - nil, nil, nil, 240, 240, nil, nil, nil, 241, 241, - 241, 240, 241, nil, 240, nil, 241, 241, nil, 240, - 240, 241, nil, 241, 241, 241, 241, 241, 241, 241, - nil, nil, nil, nil, nil, 241, 241, 241, 241, 241, - 241, 241, nil, nil, 241, nil, nil, nil, nil, nil, - nil, 241, nil, nil, 241, 241, nil, 241, 241, 241, - 241, 241, nil, 241, 241, 241, nil, 241, 241, nil, - 241, 241, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 241, nil, nil, 241, nil, nil, 241, - nil, nil, 241, nil, nil, nil, nil, nil, 241, nil, - nil, nil, nil, nil, nil, nil, 241, nil, nil, nil, - nil, 241, 241, 241, 241, 241, 241, nil, nil, nil, - 241, 241, nil, nil, nil, 242, 242, 242, 241, 242, - nil, 241, nil, 242, 242, nil, 241, 241, 242, nil, - 242, 242, 242, 242, 242, 242, 242, nil, nil, nil, - nil, nil, 242, 242, 242, 242, 242, 242, 242, nil, - nil, 242, nil, nil, nil, nil, nil, nil, 242, nil, - nil, 242, 242, nil, 242, 242, 242, 242, 242, nil, - 242, 242, 242, nil, 242, 242, nil, 242, 242, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 242, nil, nil, 242, nil, nil, 242, nil, nil, 242, - nil, nil, nil, nil, nil, 242, nil, nil, nil, nil, - nil, nil, nil, 242, nil, nil, nil, nil, 242, 242, - 242, 242, 242, 242, nil, nil, nil, 242, 242, nil, - nil, nil, 243, 243, 243, 242, 243, nil, 242, nil, - 243, 243, nil, 242, 242, 243, nil, 243, 243, 243, - 243, 243, 243, 243, nil, nil, nil, nil, nil, 243, - 243, 243, 243, 243, 243, 243, nil, nil, 243, nil, - nil, nil, nil, nil, nil, 243, nil, nil, 243, 243, - nil, 243, 243, 243, 243, 243, nil, 243, 243, 243, - nil, 243, 243, nil, 243, 243, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 243, nil, nil, - 243, nil, nil, 243, nil, nil, 243, nil, nil, nil, - nil, nil, 243, nil, nil, nil, nil, nil, nil, nil, - 243, nil, nil, nil, nil, 243, 243, 243, 243, 243, - 243, nil, nil, nil, 243, 243, nil, nil, nil, 244, - 244, 244, 243, 244, nil, 243, nil, 244, 244, nil, - 243, 243, 244, nil, 244, 244, 244, 244, 244, 244, - 244, nil, nil, nil, nil, nil, 244, 244, 244, 244, - 244, 244, 244, nil, nil, 244, nil, nil, nil, nil, - nil, nil, 244, nil, nil, 244, 244, nil, 244, 244, - 244, 244, 244, nil, 244, 244, 244, nil, 244, 244, - nil, 244, 244, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 244, nil, nil, 244, nil, nil, - 244, nil, nil, 244, nil, nil, nil, nil, nil, 244, - nil, nil, nil, nil, nil, nil, nil, 244, nil, nil, - nil, nil, 244, 244, 244, 244, 244, 244, nil, nil, - nil, 244, 244, nil, nil, nil, 245, 245, 245, 244, - 245, nil, 244, nil, 245, 245, nil, 244, 244, 245, - nil, 245, 245, 245, 245, 245, 245, 245, nil, nil, - nil, nil, nil, 245, 245, 245, 245, 245, 245, 245, - nil, nil, 245, nil, nil, nil, nil, nil, nil, 245, - nil, nil, 245, 245, nil, 245, 245, 245, 245, 245, - nil, 245, 245, 245, nil, 245, 245, nil, 245, 245, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 245, nil, nil, 245, nil, nil, 245, nil, nil, - 245, nil, nil, nil, nil, nil, 245, nil, nil, nil, - nil, nil, nil, nil, 245, nil, nil, nil, nil, 245, - 245, 245, 245, 245, 245, nil, nil, nil, 245, 245, - nil, nil, nil, 254, 254, 254, 245, 254, nil, 245, - nil, 254, 254, nil, 245, 245, 254, nil, 254, 254, - 254, 254, 254, 254, 254, nil, nil, nil, nil, nil, - 254, 254, 254, 254, 254, 254, 254, nil, nil, 254, - nil, nil, nil, nil, nil, nil, 254, nil, nil, 254, - 254, nil, 254, 254, 254, 254, 254, nil, 254, 254, - 254, nil, 254, 254, nil, 254, 254, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 254, nil, - nil, 254, nil, nil, 254, nil, nil, 254, nil, nil, - nil, nil, nil, 254, nil, nil, nil, nil, nil, nil, - nil, 254, nil, nil, nil, nil, 254, 254, 254, 254, - 254, 254, nil, nil, nil, 254, 254, nil, nil, nil, - 256, 256, 256, 254, 256, nil, 254, nil, 256, 256, - nil, 254, 254, 256, nil, 256, 256, 256, 256, 256, - 256, 256, nil, nil, nil, nil, nil, 256, 256, 256, - 256, 256, 256, 256, nil, nil, 256, nil, nil, nil, - nil, nil, nil, 256, nil, nil, 256, 256, nil, 256, - 256, 256, 256, 256, nil, 256, 256, 256, nil, 256, - 256, nil, 256, 256, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 256, nil, nil, 256, nil, - nil, 256, nil, nil, 256, nil, nil, nil, nil, nil, - 256, nil, nil, nil, nil, nil, nil, nil, 256, nil, - nil, nil, nil, 256, 256, 256, 256, 256, 256, nil, - nil, nil, 256, 256, nil, nil, nil, 261, 261, 261, - 256, 261, nil, 256, nil, 261, 261, nil, 256, 256, - 261, nil, 261, 261, 261, 261, 261, 261, 261, nil, - nil, nil, nil, nil, 261, 261, 261, 261, 261, 261, - 261, nil, nil, 261, nil, nil, nil, nil, nil, nil, - 261, nil, nil, 261, 261, nil, 261, 261, 261, 261, - 261, nil, 261, 261, 261, nil, 261, 261, nil, 261, - 261, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 261, nil, nil, 261, nil, nil, 261, nil, - nil, 261, nil, nil, nil, nil, nil, 261, nil, nil, - nil, nil, nil, nil, nil, 261, nil, nil, nil, nil, - 261, 261, 261, 261, 261, 261, nil, nil, nil, 261, - 261, nil, nil, nil, 268, 268, 268, 261, 268, nil, - 261, nil, 268, 268, nil, 261, 261, 268, nil, 268, - 268, 268, 268, 268, 268, 268, nil, nil, nil, nil, - nil, 268, 268, 268, 268, 268, 268, 268, nil, nil, - 268, nil, nil, nil, nil, nil, nil, 268, nil, nil, - 268, 268, nil, 268, 268, 268, 268, 268, 268, 268, - 268, 268, nil, 268, 268, nil, 268, 268, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 268, - nil, nil, 268, nil, nil, 268, nil, nil, 268, nil, - 268, nil, 268, nil, 268, nil, nil, nil, nil, nil, - nil, nil, 268, nil, nil, nil, nil, 268, 268, 268, - 268, 268, 268, nil, nil, nil, 268, 268, nil, nil, - nil, 269, 269, 269, 268, 269, nil, 268, nil, 269, - 269, nil, 268, 268, 269, nil, 269, 269, 269, 269, - 269, 269, 269, nil, nil, nil, nil, nil, 269, 269, - 269, 269, 269, 269, 269, nil, nil, 269, nil, nil, - nil, nil, nil, nil, 269, nil, nil, 269, 269, nil, - 269, 269, 269, 269, 269, 269, 269, 269, 269, nil, - 269, 269, nil, 269, 269, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 269, nil, nil, 269, - nil, nil, 269, nil, nil, 269, nil, 269, nil, 269, - nil, 269, nil, nil, nil, nil, nil, nil, nil, 269, - nil, nil, nil, nil, 269, 269, 269, 269, 269, 269, - nil, nil, nil, 269, 269, nil, nil, nil, 277, 277, - 277, 269, 277, nil, 269, nil, 277, 277, nil, 269, - 269, 277, nil, 277, 277, 277, 277, 277, 277, 277, - nil, nil, nil, nil, nil, 277, 277, 277, 277, 277, - 277, 277, nil, nil, 277, nil, nil, nil, nil, nil, - nil, 277, nil, nil, 277, 277, nil, 277, 277, 277, - 277, 277, 277, 277, 277, 277, nil, 277, 277, nil, - 277, 277, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 277, nil, nil, 277, nil, 277, 277, - nil, nil, 277, nil, 277, nil, 277, nil, 277, nil, - nil, nil, nil, nil, nil, nil, 277, nil, nil, nil, - nil, 277, 277, 277, 277, 277, 277, nil, nil, nil, - 277, 277, nil, nil, nil, nil, nil, nil, 277, nil, - nil, 277, nil, nil, nil, nil, 277, 277, 281, 281, - 281, 281, 281, nil, nil, nil, 281, 281, nil, nil, - nil, 281, nil, 281, 281, 281, 281, 281, 281, 281, - nil, nil, nil, nil, nil, 281, 281, 281, 281, 281, - 281, 281, nil, nil, 281, nil, nil, nil, nil, nil, - 281, 281, nil, 281, 281, 281, nil, 281, 281, 281, - 281, 281, nil, 281, 281, 281, nil, 281, 281, nil, - 281, 281, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 281, nil, nil, 281, nil, nil, 281, - nil, nil, 281, nil, 281, nil, nil, nil, 281, nil, - nil, nil, nil, nil, nil, nil, 281, nil, nil, nil, - nil, 281, 281, 281, 281, 281, 281, nil, nil, nil, - 281, 281, nil, nil, nil, 285, 285, 285, 281, 285, - nil, 281, nil, 285, 285, nil, 281, 281, 285, nil, - 285, 285, 285, 285, 285, 285, 285, nil, nil, nil, - nil, nil, 285, 285, 285, 285, 285, 285, 285, nil, - nil, 285, nil, nil, nil, nil, nil, nil, 285, nil, - nil, 285, 285, nil, 285, 285, 285, 285, 285, nil, - 285, 285, 285, nil, 285, 285, 749, nil, 749, 749, - 749, 749, 749, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 749, nil, nil, nil, nil, nil, nil, nil, - 285, nil, nil, 285, nil, nil, 285, nil, nil, 285, - nil, nil, nil, nil, nil, 749, nil, nil, nil, nil, - nil, nil, nil, 749, 749, 749, 749, nil, 285, 285, - 285, 285, 285, 285, nil, nil, nil, 285, 285, nil, - nil, nil, 285, nil, nil, 285, nil, nil, 285, nil, - nil, nil, nil, 285, 285, 286, 286, 286, 286, 286, - nil, nil, 749, 286, 286, nil, nil, nil, 286, nil, - 286, 286, 286, 286, 286, 286, 286, nil, nil, nil, - nil, nil, 286, 286, 286, 286, 286, 286, 286, nil, - nil, 286, nil, nil, nil, nil, nil, 286, 286, nil, - 286, 286, 286, nil, 286, 286, 286, 286, 286, nil, - 286, 286, 286, nil, 286, 286, nil, 286, 286, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 286, nil, nil, 286, nil, nil, 286, nil, nil, 286, - nil, 286, nil, nil, nil, 286, nil, nil, nil, nil, - nil, nil, nil, 286, nil, nil, nil, nil, 286, 286, - 286, 286, 286, 286, nil, nil, nil, 286, 286, nil, - nil, nil, 298, 298, 298, 286, 298, nil, 286, nil, - 298, 298, nil, 286, 286, 298, nil, 298, 298, 298, - 298, 298, 298, 298, nil, nil, nil, nil, nil, 298, - 298, 298, 298, 298, 298, 298, nil, nil, 298, nil, - nil, nil, nil, nil, nil, 298, nil, nil, 298, 298, - nil, 298, 298, 298, 298, 298, nil, 298, 298, 298, - nil, 298, 298, 56, nil, 56, 56, 56, nil, 56, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 298, nil, nil, - 298, nil, nil, 298, nil, nil, 298, nil, nil, nil, - nil, nil, 56, 56, nil, nil, nil, nil, nil, nil, - 56, 56, 56, 56, nil, 298, 298, 298, 298, 298, - 298, nil, nil, nil, 298, 298, nil, nil, nil, 307, - 307, 307, 298, 307, nil, 298, nil, 307, 307, nil, - 298, 298, 307, nil, 307, 307, 307, 307, 307, 307, - 307, nil, nil, nil, nil, nil, 307, 307, 307, 307, - 307, 307, 307, nil, nil, 307, nil, nil, nil, nil, - nil, nil, 307, nil, nil, 307, 307, nil, 307, 307, - 307, 307, 307, nil, 307, 307, 307, nil, 307, 307, - nil, 307, 307, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 307, nil, nil, 307, 307, nil, - 307, nil, nil, 307, nil, nil, nil, nil, nil, 307, - nil, nil, nil, nil, nil, nil, nil, 307, nil, nil, - nil, nil, 307, 307, 307, 307, 307, 307, nil, nil, - nil, 307, 307, nil, nil, nil, nil, nil, nil, 307, - nil, nil, 307, nil, nil, nil, nil, 307, 307, 309, - 309, 309, 309, 309, nil, nil, nil, 309, 309, nil, - nil, nil, 309, nil, 309, 309, 309, 309, 309, 309, - 309, nil, nil, nil, nil, nil, 309, 309, 309, 309, - 309, 309, 309, nil, nil, 309, nil, nil, nil, nil, - nil, 309, 309, nil, 309, 309, 309, nil, 309, 309, - 309, 309, 309, nil, 309, 309, 309, nil, 309, 309, - nil, 309, 309, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 309, nil, nil, 309, nil, nil, - 309, nil, nil, 309, nil, 309, nil, nil, nil, 309, - nil, nil, nil, nil, nil, nil, nil, 309, nil, nil, - nil, nil, 309, 309, 309, 309, 309, 309, nil, nil, - nil, 309, 309, nil, nil, nil, 349, 349, 349, 309, - 349, nil, 309, nil, 349, 349, nil, 309, 309, 349, - nil, 349, 349, 349, 349, 349, 349, 349, nil, nil, - nil, nil, nil, 349, 349, 349, 349, 349, 349, 349, - nil, nil, 349, nil, nil, nil, nil, nil, nil, 349, - nil, nil, 349, 349, nil, 349, 349, 349, 349, 349, - nil, 349, 349, 349, nil, 349, 349, nil, 349, 349, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 349, nil, nil, 349, nil, nil, 349, nil, nil, - 349, nil, nil, nil, nil, nil, 349, nil, nil, nil, - nil, nil, nil, nil, 349, nil, nil, nil, nil, 349, - 349, 349, 349, 349, 349, nil, nil, nil, 349, 349, - nil, nil, nil, 350, 350, 350, 349, 350, nil, 349, - nil, 350, 350, nil, 349, 349, 350, nil, 350, 350, - 350, 350, 350, 350, 350, nil, nil, nil, nil, nil, - 350, 350, 350, 350, 350, 350, 350, nil, nil, 350, - nil, nil, nil, nil, nil, nil, 350, nil, nil, 350, - 350, nil, 350, 350, 350, 350, 350, nil, 350, 350, - 350, nil, 350, 350, nil, 350, 350, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 350, nil, - nil, 350, nil, nil, 350, nil, nil, 350, nil, nil, - nil, nil, nil, 350, nil, nil, nil, nil, nil, nil, - nil, 350, nil, nil, nil, nil, 350, 350, 350, 350, - 350, 350, nil, nil, nil, 350, 350, nil, nil, nil, - 369, 369, 369, 350, 369, nil, 350, nil, 369, 369, - nil, 350, 350, 369, nil, 369, 369, 369, 369, 369, - 369, 369, nil, nil, nil, nil, nil, 369, 369, 369, - 369, 369, 369, 369, nil, nil, 369, nil, nil, nil, - nil, nil, nil, 369, nil, nil, 369, 369, nil, 369, - 369, 369, 369, 369, nil, 369, 369, 369, nil, 369, - 369, 322, nil, 322, 322, 322, nil, 322, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 369, nil, nil, 369, nil, - nil, 369, nil, nil, 369, nil, nil, nil, nil, nil, - 322, nil, 322, nil, nil, nil, nil, nil, 322, 322, - 322, 322, nil, 369, 369, 369, 369, 369, 369, nil, - nil, nil, 369, 369, nil, nil, nil, 381, 381, 381, - 369, 381, nil, 369, nil, 381, 381, nil, 369, 369, - 381, nil, 381, 381, 381, 381, 381, 381, 381, nil, - nil, nil, nil, nil, 381, 381, 381, 381, 381, 381, - 381, nil, nil, 381, nil, nil, nil, nil, nil, nil, - 381, nil, nil, 381, 381, nil, 381, 381, 381, 381, - 381, nil, 381, 381, 381, nil, 381, 381, nil, 381, - 381, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 381, nil, nil, 381, nil, nil, 381, nil, - nil, 381, nil, nil, nil, nil, nil, 381, nil, nil, - nil, nil, nil, nil, nil, 381, nil, nil, nil, nil, - 381, 381, 381, 381, 381, 381, nil, nil, nil, 381, - 381, nil, nil, nil, 421, 421, 421, 381, 421, nil, - 381, nil, 421, 421, nil, 381, 381, 421, nil, 421, - 421, 421, 421, 421, 421, 421, nil, nil, nil, nil, - nil, 421, 421, 421, 421, 421, 421, 421, nil, nil, - 421, nil, nil, nil, nil, nil, nil, 421, nil, nil, - 421, 421, nil, 421, 421, 421, 421, 421, nil, 421, - 421, 421, nil, 421, 421, nil, 421, 421, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 421, - nil, nil, 421, nil, nil, 421, nil, nil, 421, nil, - nil, nil, nil, nil, 421, nil, nil, nil, nil, nil, - nil, nil, 421, nil, nil, nil, nil, 421, 421, 421, - 421, 421, 421, nil, nil, nil, 421, 421, nil, nil, - nil, 432, 432, 432, 421, 432, nil, 421, nil, 432, - 432, nil, 421, 421, 432, nil, 432, 432, 432, 432, - 432, 432, 432, nil, nil, nil, nil, nil, 432, 432, - 432, 432, 432, 432, 432, nil, nil, 432, nil, nil, - nil, nil, nil, nil, 432, nil, nil, 432, 432, nil, - 432, 432, 432, 432, 432, 432, 432, 432, 432, nil, - 432, 432, nil, 432, 432, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 432, nil, nil, 432, - 432, nil, 432, nil, nil, 432, nil, 432, nil, 432, - nil, 432, nil, nil, nil, nil, nil, nil, nil, 432, - nil, nil, nil, nil, 432, 432, 432, 432, 432, 432, - nil, nil, nil, 432, 432, nil, nil, nil, 440, 440, - 440, 432, 440, nil, 432, nil, 440, 440, nil, 432, - 432, 440, nil, 440, 440, 440, 440, 440, 440, 440, - nil, nil, nil, nil, nil, 440, 440, 440, 440, 440, - 440, 440, nil, nil, 440, nil, nil, nil, nil, nil, - nil, 440, nil, nil, 440, 440, nil, 440, 440, 440, - 440, 440, 440, 440, 440, 440, nil, 440, 440, nil, - 440, 440, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 440, nil, nil, 440, 440, nil, 440, - nil, nil, 440, nil, 440, nil, 440, nil, 440, nil, - nil, nil, nil, nil, nil, nil, 440, nil, nil, nil, - nil, 440, 440, 440, 440, 440, 440, nil, nil, nil, - 440, 440, nil, nil, nil, 441, 441, 441, 440, 441, - nil, 440, nil, 441, 441, nil, 440, 440, 441, nil, - 441, 441, 441, 441, 441, 441, 441, nil, nil, nil, - nil, nil, 441, 441, 441, 441, 441, 441, 441, nil, - nil, 441, nil, nil, nil, nil, nil, nil, 441, nil, - nil, 441, 441, nil, 441, 441, 441, 441, 441, 441, - 441, 441, 441, nil, 441, 441, nil, 441, 441, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 441, nil, nil, 441, 441, nil, 441, nil, nil, 441, - nil, 441, nil, 441, nil, 441, nil, nil, nil, nil, - nil, nil, nil, 441, nil, nil, nil, nil, 441, 441, - 441, 441, 441, 441, nil, nil, nil, 441, 441, nil, - nil, nil, 442, 442, 442, 441, 442, nil, 441, nil, - 442, 442, nil, 441, 441, 442, nil, 442, 442, 442, - 442, 442, 442, 442, nil, nil, nil, nil, nil, 442, - 442, 442, 442, 442, 442, 442, nil, nil, 442, nil, - nil, nil, nil, nil, nil, 442, nil, nil, 442, 442, - nil, 442, 442, 442, 442, 442, 442, 442, 442, 442, - nil, 442, 442, nil, 442, 442, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 442, nil, nil, - 442, 442, nil, 442, nil, nil, 442, nil, 442, nil, - 442, nil, 442, nil, nil, nil, nil, nil, nil, nil, - 442, nil, nil, nil, nil, 442, 442, 442, 442, 442, - 442, nil, nil, nil, 442, 442, nil, nil, nil, 451, - 451, 451, 442, 451, nil, 442, nil, 451, 451, nil, - 442, 442, 451, nil, 451, 451, 451, 451, 451, 451, - 451, nil, nil, nil, nil, nil, 451, 451, 451, 451, - 451, 451, 451, nil, nil, 451, nil, nil, nil, nil, - nil, nil, 451, nil, nil, 451, 451, nil, 451, 451, - 451, 451, 451, 451, 451, 451, 451, nil, 451, 451, - nil, 451, 451, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 451, nil, nil, 451, nil, nil, - 451, nil, nil, 451, nil, 451, nil, nil, nil, 451, - nil, nil, nil, nil, nil, nil, nil, 451, nil, nil, - nil, nil, 451, 451, 451, 451, 451, 451, nil, nil, - nil, 451, 451, nil, nil, nil, 452, 452, 452, 451, - 452, nil, 451, nil, 452, 452, nil, 451, 451, 452, - nil, 452, 452, 452, 452, 452, 452, 452, nil, nil, - nil, nil, nil, 452, 452, 452, 452, 452, 452, 452, - nil, nil, 452, nil, nil, nil, nil, nil, nil, 452, - nil, nil, 452, 452, nil, 452, 452, 452, 452, 452, - 452, 452, 452, 452, nil, 452, 452, nil, 452, 452, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 452, nil, nil, 452, nil, nil, 452, nil, nil, - 452, nil, 452, nil, nil, nil, 452, nil, nil, nil, - nil, nil, nil, nil, 452, nil, nil, nil, nil, 452, - 452, 452, 452, 452, 452, nil, nil, nil, 452, 452, - nil, nil, nil, 454, 454, 454, 452, 454, nil, 452, - nil, 454, 454, nil, 452, 452, 454, nil, 454, 454, - 454, 454, 454, 454, 454, nil, nil, nil, nil, nil, - 454, 454, 454, 454, 454, 454, 454, nil, nil, 454, - nil, nil, nil, nil, nil, nil, 454, nil, nil, 454, - 454, nil, 454, 454, 454, 454, 454, nil, 454, 454, - 454, nil, 454, 454, nil, 454, 454, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 454, nil, - nil, 454, nil, nil, 454, nil, nil, 454, nil, nil, - nil, nil, nil, 454, nil, nil, nil, nil, nil, nil, - nil, 454, nil, nil, nil, nil, 454, 454, 454, 454, - 454, 454, nil, nil, nil, 454, 454, nil, nil, nil, - 455, 455, 455, 454, 455, nil, 454, nil, 455, 455, - nil, 454, 454, 455, nil, 455, 455, 455, 455, 455, - 455, 455, nil, nil, nil, nil, nil, 455, 455, 455, - 455, 455, 455, 455, nil, nil, 455, nil, nil, nil, - nil, nil, nil, 455, nil, nil, 455, 455, nil, 455, - 455, 455, 455, 455, nil, 455, 455, 455, nil, 455, - 455, nil, 455, 455, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 455, nil, nil, 455, nil, - nil, 455, nil, nil, 455, nil, nil, nil, nil, nil, - 455, nil, nil, nil, nil, nil, nil, nil, 455, nil, - nil, nil, nil, 455, 455, 455, 455, 455, 455, nil, - nil, nil, 455, 455, nil, nil, nil, 456, 456, 456, - 455, 456, nil, 455, nil, 456, 456, nil, 455, 455, - 456, nil, 456, 456, 456, 456, 456, 456, 456, nil, - nil, nil, nil, nil, 456, 456, 456, 456, 456, 456, - 456, nil, nil, 456, nil, nil, nil, nil, nil, nil, - 456, nil, nil, 456, 456, nil, 456, 456, 456, 456, - 456, nil, 456, 456, 456, nil, 456, 456, nil, 456, - 456, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 456, nil, nil, 456, nil, nil, 456, nil, - nil, 456, nil, nil, nil, nil, nil, 456, nil, nil, - nil, nil, nil, nil, nil, 456, nil, nil, nil, nil, - 456, 456, 456, 456, 456, 456, nil, nil, nil, 456, - 456, nil, nil, nil, 487, 487, 487, 456, 487, nil, - 456, nil, 487, 487, nil, 456, 456, 487, nil, 487, - 487, 487, 487, 487, 487, 487, nil, nil, nil, nil, - nil, 487, 487, 487, 487, 487, 487, 487, nil, nil, - 487, nil, nil, nil, nil, nil, nil, 487, nil, nil, - 487, 487, nil, 487, 487, 487, 487, 487, 487, 487, - 487, 487, nil, 487, 487, nil, 487, 487, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 487, - nil, nil, 487, nil, nil, 487, nil, nil, 487, nil, - 487, nil, 487, nil, 487, nil, nil, nil, nil, nil, - nil, nil, 487, nil, nil, nil, nil, 487, 487, 487, - 487, 487, 487, nil, nil, nil, 487, 487, nil, nil, - nil, 489, 489, 489, 487, 489, nil, 487, nil, 489, - 489, nil, 487, 487, 489, nil, 489, 489, 489, 489, - 489, 489, 489, nil, nil, nil, nil, nil, 489, 489, - 489, 489, 489, 489, 489, nil, nil, 489, nil, nil, - nil, nil, nil, nil, 489, nil, nil, 489, 489, nil, - 489, 489, 489, 489, 489, 489, 489, 489, 489, nil, - 489, 489, nil, 489, 489, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 489, nil, nil, 489, - nil, nil, 489, nil, nil, 489, nil, nil, nil, 489, - nil, 489, nil, nil, nil, nil, nil, nil, nil, 489, - nil, nil, nil, nil, 489, 489, 489, 489, 489, 489, - nil, nil, nil, 489, 489, nil, nil, nil, 491, 491, - 491, 489, 491, nil, 489, nil, 491, 491, nil, 489, - 489, 491, nil, 491, 491, 491, 491, 491, 491, 491, - nil, nil, nil, nil, nil, 491, 491, 491, 491, 491, - 491, 491, nil, nil, 491, nil, nil, nil, nil, nil, - nil, 491, nil, nil, 491, 491, nil, 491, 491, 491, - 491, 491, nil, 491, 491, 491, nil, 491, 491, nil, - 491, 491, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 491, nil, nil, 491, nil, nil, 491, - nil, nil, 491, nil, nil, nil, nil, nil, 491, nil, - nil, nil, nil, nil, nil, nil, 491, nil, nil, nil, - nil, 491, 491, 491, 491, 491, 491, nil, nil, nil, - 491, 491, nil, nil, nil, 506, 506, 506, 491, 506, - nil, 491, nil, 506, 506, nil, 491, 491, 506, nil, - 506, 506, 506, 506, 506, 506, 506, nil, nil, nil, - nil, nil, 506, 506, 506, 506, 506, 506, 506, nil, - nil, 506, nil, nil, nil, nil, nil, nil, 506, nil, - nil, 506, 506, nil, 506, 506, 506, 506, 506, nil, - 506, 506, 506, nil, 506, 506, nil, 506, 506, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 506, nil, nil, 506, nil, 506, 506, nil, nil, 506, - nil, nil, nil, 506, nil, 506, nil, nil, nil, nil, - nil, nil, nil, 506, nil, nil, nil, nil, 506, 506, - 506, 506, 506, 506, nil, nil, nil, 506, 506, nil, - nil, nil, nil, nil, nil, 506, nil, nil, 506, nil, - nil, nil, nil, 506, 506, 512, 512, 512, 512, 512, - nil, nil, nil, 512, 512, nil, nil, nil, 512, nil, - 512, 512, 512, 512, 512, 512, 512, nil, nil, nil, - nil, nil, 512, 512, 512, 512, 512, 512, 512, nil, - nil, 512, nil, nil, nil, nil, nil, 512, 512, nil, - 512, 512, 512, nil, 512, 512, 512, 512, 512, nil, - 512, 512, 512, nil, 512, 512, nil, 512, 512, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 512, nil, nil, 512, nil, nil, 512, nil, nil, 512, - nil, 512, nil, nil, nil, 512, nil, nil, nil, nil, - nil, nil, nil, 512, nil, nil, nil, nil, 512, 512, - 512, 512, 512, 512, nil, nil, nil, 512, 512, nil, - nil, nil, nil, nil, 512, 512, nil, nil, 512, nil, - nil, nil, nil, 512, 512, 518, 518, 518, nil, 518, - nil, nil, nil, 518, 518, nil, nil, nil, 518, nil, - 518, 518, 518, 518, 518, 518, 518, nil, nil, nil, - nil, nil, 518, 518, 518, 518, 518, 518, 518, nil, - nil, 518, nil, nil, nil, nil, nil, nil, 518, nil, - nil, 518, 518, nil, 518, 518, 518, 518, 518, nil, - 518, 518, 518, nil, 518, 518, 559, nil, 559, 559, - 559, nil, 559, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 518, nil, nil, 518, nil, nil, 518, nil, nil, 518, - nil, nil, nil, nil, nil, 559, nil, nil, nil, nil, - nil, nil, nil, 559, 559, 559, 559, nil, 518, 518, - 518, 518, 518, 518, nil, nil, nil, 518, 518, nil, - nil, nil, 520, 520, 520, 518, 520, nil, 518, nil, - 520, 520, nil, 518, 518, 520, nil, 520, 520, 520, - 520, 520, 520, 520, nil, nil, nil, nil, nil, 520, - 520, 520, 520, 520, 520, 520, nil, nil, 520, nil, - nil, nil, nil, nil, nil, 520, nil, nil, 520, 520, - nil, 520, 520, 520, 520, 520, 520, 520, 520, 520, - nil, 520, 520, nil, 520, 520, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 520, nil, nil, - 520, nil, nil, 520, nil, nil, 520, nil, 520, nil, - nil, nil, 520, nil, nil, nil, nil, nil, nil, nil, - 520, nil, nil, nil, nil, 520, 520, 520, 520, 520, - 520, nil, nil, nil, 520, 520, nil, nil, nil, 523, - 523, 523, 520, 523, nil, 520, nil, 523, 523, nil, - 520, 520, 523, nil, 523, 523, 523, 523, 523, 523, - 523, nil, nil, nil, nil, nil, 523, 523, 523, 523, - 523, 523, 523, nil, nil, 523, nil, nil, nil, nil, - nil, nil, 523, nil, nil, 523, 523, nil, 523, 523, - 523, 523, 523, 523, 523, 523, 523, nil, 523, 523, - nil, 523, 523, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 523, nil, nil, 523, nil, nil, - 523, nil, nil, 523, nil, 523, nil, nil, nil, 523, - nil, nil, nil, nil, nil, nil, nil, 523, nil, nil, - nil, nil, 523, 523, 523, 523, 523, 523, nil, nil, - nil, 523, 523, nil, nil, nil, 531, 531, 531, 523, - 531, nil, 523, nil, 531, 531, nil, 523, 523, 531, - nil, 531, 531, 531, 531, 531, 531, 531, nil, nil, - nil, nil, nil, 531, 531, 531, 531, 531, 531, 531, - nil, nil, 531, nil, nil, nil, nil, nil, nil, 531, - nil, nil, 531, 531, nil, 531, 531, 531, 531, 531, - nil, 531, 531, 531, nil, 531, 531, nil, 531, 531, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 531, nil, nil, 531, nil, nil, 531, nil, nil, - 531, nil, nil, nil, nil, nil, 531, nil, nil, nil, - nil, nil, nil, nil, 531, nil, nil, nil, nil, 531, - 531, 531, 531, 531, 531, nil, nil, nil, 531, 531, - nil, nil, nil, 532, 532, 532, 531, 532, nil, 531, - nil, 532, 532, nil, 531, 531, 532, nil, 532, 532, - 532, 532, 532, 532, 532, nil, nil, nil, nil, nil, - 532, 532, 532, 532, 532, 532, 532, nil, nil, 532, - nil, nil, nil, nil, nil, nil, 532, nil, nil, 532, - 532, nil, 532, 532, 532, 532, 532, nil, 532, 532, - 532, nil, 532, 532, nil, 532, 532, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 532, nil, - nil, 532, nil, nil, 532, nil, nil, 532, nil, nil, - nil, nil, nil, 532, nil, nil, nil, nil, nil, nil, - nil, 532, nil, nil, nil, nil, 532, 532, 532, 532, - 532, 532, nil, nil, nil, 532, 532, nil, nil, nil, - 533, 533, 533, 532, 533, nil, 532, nil, 533, 533, - nil, 532, 532, 533, nil, 533, 533, 533, 533, 533, - 533, 533, nil, nil, nil, nil, nil, 533, 533, 533, - 533, 533, 533, 533, nil, nil, 533, nil, nil, nil, - nil, nil, nil, 533, nil, nil, 533, 533, nil, 533, - 533, 533, 533, 533, nil, 533, 533, 533, nil, 533, - 533, nil, 533, 533, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 533, nil, nil, 533, nil, - nil, 533, nil, nil, 533, nil, nil, nil, nil, nil, - 533, nil, nil, nil, nil, nil, nil, nil, 533, nil, - nil, nil, nil, 533, 533, 533, 533, 533, 533, nil, - nil, nil, 533, 533, nil, nil, nil, 537, 537, 537, - 533, 537, nil, 533, nil, 537, 537, nil, 533, 533, - 537, nil, 537, 537, 537, 537, 537, 537, 537, nil, - nil, nil, nil, nil, 537, 537, 537, 537, 537, 537, - 537, nil, nil, 537, nil, nil, nil, nil, nil, nil, - 537, nil, nil, 537, 537, nil, 537, 537, 537, 537, - 537, nil, 537, 537, 537, nil, 537, 537, nil, 537, - 537, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 537, nil, nil, 537, nil, nil, 537, nil, - nil, 537, nil, nil, nil, nil, nil, 537, nil, nil, - nil, nil, nil, nil, nil, 537, nil, nil, nil, nil, - 537, 537, 537, 537, 537, 537, nil, nil, nil, 537, - 537, nil, nil, nil, 543, 543, 543, 537, 543, nil, - 537, nil, 543, 543, nil, 537, 537, 543, nil, 543, - 543, 543, 543, 543, 543, 543, nil, nil, nil, nil, - nil, 543, 543, 543, 543, 543, 543, 543, nil, nil, - 543, nil, nil, nil, nil, nil, nil, 543, nil, nil, - 543, 543, nil, 543, 543, 543, 543, 543, 543, 543, - 543, 543, nil, 543, 543, nil, 543, 543, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 543, - nil, nil, 543, nil, nil, 543, nil, nil, 543, nil, - 543, nil, nil, nil, 543, nil, nil, nil, nil, nil, - nil, nil, 543, nil, nil, nil, nil, 543, 543, 543, - 543, 543, 543, nil, nil, nil, 543, 543, nil, nil, - nil, 546, 546, 546, 543, 546, nil, 543, nil, 546, - 546, nil, 543, 543, 546, nil, 546, 546, 546, 546, - 546, 546, 546, nil, nil, nil, nil, nil, 546, 546, - 546, 546, 546, 546, 546, nil, nil, 546, nil, nil, - nil, nil, nil, nil, 546, nil, nil, 546, 546, nil, - 546, 546, 546, 546, 546, 546, 546, 546, 546, nil, - 546, 546, nil, 546, 546, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 546, nil, nil, 546, - nil, nil, 546, nil, nil, 546, nil, nil, nil, nil, - nil, 546, nil, nil, nil, nil, nil, nil, nil, 546, - nil, nil, nil, nil, 546, 546, 546, 546, 546, 546, - nil, nil, nil, 546, 546, nil, nil, nil, nil, nil, - nil, 546, nil, nil, 546, nil, nil, nil, nil, 546, - 546, 551, 551, 551, 551, 551, nil, nil, nil, 551, - 551, nil, nil, nil, 551, nil, 551, 551, 551, 551, - 551, 551, 551, nil, nil, nil, nil, nil, 551, 551, - 551, 551, 551, 551, 551, nil, nil, 551, nil, nil, - nil, nil, nil, 551, 551, nil, 551, 551, 551, nil, - 551, 551, 551, 551, 551, nil, 551, 551, 551, nil, - 551, 551, nil, 551, 551, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 551, nil, nil, 551, - nil, nil, 551, nil, nil, 551, nil, 551, nil, nil, - nil, 551, nil, nil, nil, nil, nil, nil, nil, 551, - nil, nil, nil, nil, 551, 551, 551, 551, 551, 551, - nil, nil, nil, 551, 551, nil, nil, nil, nil, nil, - nil, 551, nil, nil, 551, nil, nil, nil, nil, 551, - 551, 552, 552, 552, 552, 552, nil, nil, nil, 552, - 552, nil, nil, nil, 552, nil, 552, 552, 552, 552, - 552, 552, 552, nil, nil, nil, nil, nil, 552, 552, - 552, 552, 552, 552, 552, nil, nil, 552, nil, nil, - nil, nil, nil, 552, 552, nil, 552, 552, 552, nil, - 552, 552, 552, 552, 552, nil, 552, 552, 552, nil, - 552, 552, nil, 552, 552, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 552, nil, nil, 552, - nil, nil, 552, nil, nil, 552, nil, 552, nil, nil, - nil, 552, nil, nil, nil, nil, nil, nil, nil, 552, - nil, nil, nil, nil, 552, 552, 552, 552, 552, 552, - nil, nil, nil, 552, 552, nil, nil, nil, 558, 558, - 558, 552, 558, nil, 552, nil, 558, 558, nil, 552, - 552, 558, nil, 558, 558, 558, 558, 558, 558, 558, - nil, nil, nil, nil, nil, 558, 558, 558, 558, 558, - 558, 558, nil, nil, 558, nil, nil, nil, nil, nil, - nil, 558, nil, nil, 558, 558, nil, 558, 558, 558, - 558, 558, nil, 558, 558, 558, nil, 558, 558, 856, - nil, 856, 856, 856, 856, 856, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 856, nil, nil, nil, nil, - nil, nil, nil, 558, nil, nil, 558, nil, nil, 558, - nil, nil, 558, nil, nil, nil, nil, nil, 856, nil, - nil, nil, nil, nil, nil, nil, 856, 856, 856, 856, - nil, 558, 558, 558, 558, 558, 558, nil, nil, nil, - 558, 558, nil, nil, nil, nil, nil, nil, 558, nil, - nil, 558, nil, nil, nil, nil, 558, 558, 572, 572, - 572, 572, 572, nil, nil, 856, 572, 572, nil, nil, - nil, 572, nil, 572, 572, 572, 572, 572, 572, 572, - nil, nil, nil, nil, nil, 572, 572, 572, 572, 572, - 572, 572, nil, nil, 572, nil, nil, nil, nil, nil, - 572, 572, nil, 572, 572, 572, nil, 572, 572, 572, - 572, 572, nil, 572, 572, 572, nil, 572, 572, nil, - 572, 572, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 572, nil, nil, 572, nil, nil, 572, - nil, nil, 572, nil, 572, nil, nil, nil, 572, nil, - nil, nil, nil, nil, nil, nil, 572, nil, nil, nil, - nil, 572, 572, 572, 572, 572, 572, nil, nil, nil, - 572, 572, nil, nil, nil, nil, nil, nil, 572, nil, - nil, 572, nil, nil, nil, nil, 572, 572, 576, 576, - 576, 576, 576, nil, nil, nil, 576, 576, nil, nil, - nil, 576, nil, 576, 576, 576, 576, 576, 576, 576, - nil, nil, nil, nil, nil, 576, 576, 576, 576, 576, - 576, 576, nil, nil, 576, nil, nil, nil, nil, nil, - 576, 576, nil, 576, 576, 576, nil, 576, 576, 576, - 576, 576, nil, 576, 576, 576, nil, 576, 576, nil, - 576, 576, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 576, nil, nil, 576, nil, nil, 576, - nil, nil, 576, nil, 576, nil, nil, nil, 576, nil, - nil, nil, nil, nil, nil, nil, 576, nil, nil, nil, - nil, 576, 576, 576, 576, 576, 576, nil, nil, nil, - 576, 576, nil, nil, nil, nil, nil, nil, 576, nil, - nil, 576, nil, nil, nil, nil, 576, 576, 581, 581, - 581, 581, 581, nil, nil, nil, 581, 581, nil, nil, - nil, 581, nil, 581, 581, 581, 581, 581, 581, 581, - nil, nil, nil, nil, nil, 581, 581, 581, 581, 581, - 581, 581, nil, nil, 581, nil, nil, nil, nil, nil, - 581, 581, nil, 581, 581, 581, nil, 581, 581, 581, - 581, 581, nil, 581, 581, 581, nil, 581, 581, nil, - 581, 581, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 581, nil, nil, 581, nil, nil, 581, - nil, nil, 581, nil, 581, nil, nil, nil, 581, nil, - nil, nil, nil, nil, nil, nil, 581, nil, nil, nil, - nil, 581, 581, 581, 581, 581, 581, nil, nil, nil, - 581, 581, nil, nil, nil, 583, 583, 583, 581, 583, - nil, 581, nil, 583, 583, nil, 581, 581, 583, nil, - 583, 583, 583, 583, 583, 583, 583, nil, nil, nil, - nil, nil, 583, 583, 583, 583, 583, 583, 583, nil, - nil, 583, nil, nil, nil, nil, nil, nil, 583, nil, - nil, 583, 583, nil, 583, 583, 583, 583, 583, 583, - 583, 583, 583, nil, 583, 583, nil, 583, 583, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 583, nil, nil, 583, nil, nil, 583, nil, nil, 583, - nil, 583, nil, nil, nil, 583, nil, nil, nil, nil, - nil, nil, nil, 583, nil, nil, nil, nil, 583, 583, - 583, 583, 583, 583, nil, nil, nil, 583, 583, nil, - nil, nil, 586, 586, 586, 583, 586, nil, 583, nil, - 586, 586, nil, 583, 583, 586, nil, 586, 586, 586, - 586, 586, 586, 586, nil, nil, nil, nil, nil, 586, - 586, 586, 586, 586, 586, 586, nil, nil, 586, nil, - nil, nil, nil, nil, nil, 586, nil, nil, 586, 586, - nil, 586, 586, 586, 586, 586, 586, 586, 586, 586, - nil, 586, 586, nil, 586, 586, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 586, nil, nil, - 586, nil, nil, 586, nil, nil, 586, nil, 586, nil, - nil, nil, 586, nil, nil, nil, nil, nil, nil, nil, - 586, nil, nil, nil, nil, 586, 586, 586, 586, 586, - 586, nil, nil, nil, 586, 586, nil, nil, nil, 592, - 592, 592, 586, 592, nil, 586, nil, 592, 592, nil, - 586, 586, 592, nil, 592, 592, 592, 592, 592, 592, - 592, nil, nil, nil, nil, nil, 592, 592, 592, 592, - 592, 592, 592, nil, nil, 592, nil, nil, nil, nil, - nil, nil, 592, nil, nil, 592, 592, nil, 592, 592, - 592, 592, 592, 592, 592, 592, 592, nil, 592, 592, - nil, 592, 592, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 592, nil, nil, 592, nil, nil, - 592, nil, nil, 592, nil, 592, nil, nil, nil, 592, - nil, nil, nil, nil, nil, nil, nil, 592, nil, nil, - nil, nil, 592, 592, 592, 592, 592, 592, nil, nil, - nil, 592, 592, nil, nil, nil, 596, 596, 596, 592, - 596, nil, 592, nil, 596, 596, nil, 592, 592, 596, - nil, 596, 596, 596, 596, 596, 596, 596, nil, nil, - nil, nil, nil, 596, 596, 596, 596, 596, 596, 596, - nil, nil, 596, nil, nil, nil, nil, nil, nil, 596, - nil, nil, 596, 596, nil, 596, 596, 596, 596, 596, - nil, 596, 596, 596, nil, 596, 596, nil, 596, 596, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 596, nil, nil, 596, nil, nil, 596, nil, nil, - 596, nil, nil, nil, nil, nil, 596, nil, nil, nil, - nil, nil, nil, nil, 596, nil, nil, nil, nil, 596, - 596, 596, 596, 596, 596, nil, nil, nil, 596, 596, - nil, nil, nil, 598, 598, 598, 596, 598, nil, 596, - nil, 598, 598, nil, 596, 596, 598, nil, 598, 598, - 598, 598, 598, 598, 598, nil, nil, nil, nil, nil, - 598, 598, 598, 598, 598, 598, 598, nil, nil, 598, - nil, nil, nil, nil, nil, nil, 598, nil, nil, 598, - 598, nil, 598, 598, 598, 598, 598, nil, 598, 598, - 598, nil, 598, 598, nil, 598, 598, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 598, nil, - nil, 598, nil, nil, 598, nil, nil, 598, nil, nil, - nil, nil, nil, 598, nil, nil, nil, nil, nil, nil, - nil, 598, nil, nil, nil, nil, 598, 598, 598, 598, - 598, 598, nil, nil, nil, 598, 598, nil, nil, nil, - 625, 625, 625, 598, 625, nil, 598, nil, 625, 625, - nil, 598, 598, 625, nil, 625, 625, 625, 625, 625, - 625, 625, nil, nil, nil, nil, nil, 625, 625, 625, - 625, 625, 625, 625, nil, nil, 625, nil, nil, nil, - nil, nil, nil, 625, nil, nil, 625, 625, nil, 625, - 625, 625, 625, 625, nil, 625, 625, 625, nil, 625, - 625, nil, 625, 625, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 625, nil, nil, 625, nil, - nil, 625, nil, nil, 625, nil, nil, nil, nil, nil, - 625, nil, nil, nil, nil, nil, nil, nil, 625, nil, - nil, nil, nil, 625, 625, 625, 625, 625, 625, nil, - nil, nil, 625, 625, nil, nil, nil, 627, 627, 627, - 625, 627, nil, 625, nil, 627, 627, nil, 625, 625, - 627, nil, 627, 627, 627, 627, 627, 627, 627, nil, - nil, nil, nil, nil, 627, 627, 627, 627, 627, 627, - 627, nil, nil, 627, nil, nil, nil, nil, nil, nil, - 627, nil, nil, 627, 627, nil, 627, 627, 627, 627, - 627, nil, 627, 627, 627, nil, 627, 627, nil, 627, - 627, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 627, nil, nil, 627, nil, nil, 627, nil, - nil, 627, nil, 627, nil, nil, nil, 627, nil, nil, - nil, nil, nil, nil, nil, 627, nil, nil, nil, nil, - 627, 627, 627, 627, 627, 627, nil, nil, nil, 627, - 627, nil, nil, nil, 630, 630, 630, 627, 630, nil, - 627, nil, 630, 630, nil, 627, 627, 630, nil, 630, - 630, 630, 630, 630, 630, 630, nil, nil, nil, nil, - nil, 630, 630, 630, 630, 630, 630, 630, nil, nil, - 630, nil, nil, nil, nil, nil, nil, 630, nil, nil, - 630, 630, nil, 630, 630, 630, 630, 630, nil, 630, - 630, 630, nil, 630, 630, nil, 630, 630, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 630, - nil, nil, 630, nil, nil, 630, nil, nil, 630, nil, - nil, nil, nil, nil, 630, nil, nil, nil, nil, nil, - nil, nil, 630, nil, nil, nil, nil, 630, 630, 630, - 630, 630, 630, nil, nil, nil, 630, 630, nil, nil, - nil, 631, 631, 631, 630, 631, nil, 630, nil, 631, - 631, nil, 630, 630, 631, nil, 631, 631, 631, 631, - 631, 631, 631, nil, nil, nil, nil, nil, 631, 631, - 631, 631, 631, 631, 631, nil, nil, 631, nil, nil, - nil, nil, nil, nil, 631, nil, nil, 631, 631, nil, - 631, 631, 631, 631, 631, nil, 631, 631, 631, nil, - 631, 631, nil, 631, 631, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 631, nil, nil, 631, - nil, nil, 631, nil, nil, 631, nil, nil, nil, nil, - nil, 631, nil, nil, nil, nil, nil, nil, nil, 631, - nil, nil, nil, nil, 631, 631, 631, 631, 631, 631, - nil, nil, nil, 631, 631, nil, nil, nil, 636, 636, - 636, 631, 636, nil, 631, nil, 636, 636, nil, 631, - 631, 636, nil, 636, 636, 636, 636, 636, 636, 636, - nil, nil, nil, nil, nil, 636, 636, 636, 636, 636, - 636, 636, nil, nil, 636, nil, nil, nil, nil, nil, - nil, 636, nil, nil, 636, 636, nil, 636, 636, 636, - 636, 636, nil, 636, 636, 636, nil, 636, 636, nil, - 636, 636, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 636, nil, nil, 636, nil, nil, 636, - nil, nil, 636, nil, nil, nil, nil, nil, 636, nil, - nil, nil, nil, nil, nil, nil, 636, nil, nil, nil, - nil, 636, 636, 636, 636, 636, 636, nil, nil, nil, - 636, 636, nil, nil, nil, 639, 639, 639, 636, 639, - nil, 636, nil, 639, 639, nil, 636, 636, 639, nil, - 639, 639, 639, 639, 639, 639, 639, nil, nil, nil, - nil, nil, 639, 639, 639, 639, 639, 639, 639, nil, - nil, 639, nil, nil, nil, nil, nil, nil, 639, nil, - nil, 639, 639, nil, 639, 639, 639, 639, 639, nil, - 639, 639, 639, nil, 639, 639, nil, 639, 639, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 639, nil, nil, 639, nil, nil, 639, nil, nil, 639, - nil, nil, nil, nil, nil, 639, nil, nil, nil, nil, - nil, nil, nil, 639, nil, nil, nil, nil, 639, 639, - 639, 639, 639, 639, nil, nil, nil, 639, 639, nil, - nil, nil, 650, 650, 650, 639, 650, nil, 639, nil, - 650, 650, nil, 639, 639, 650, nil, 650, 650, 650, - 650, 650, 650, 650, nil, nil, nil, nil, nil, 650, - 650, 650, 650, 650, 650, 650, nil, nil, 650, nil, - nil, nil, nil, nil, nil, 650, nil, nil, 650, 650, - nil, 650, 650, 650, 650, 650, nil, 650, 650, 650, - nil, 650, 650, nil, 650, 650, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 650, nil, nil, - 650, nil, nil, 650, nil, nil, 650, nil, nil, nil, - nil, nil, 650, nil, nil, nil, nil, nil, nil, nil, - 650, nil, nil, nil, nil, 650, 650, 650, 650, 650, - 650, nil, nil, nil, 650, 650, nil, nil, nil, nil, - nil, nil, 650, nil, nil, 650, nil, nil, nil, nil, - 650, 650, 654, 654, 654, 654, 654, nil, nil, nil, - 654, 654, nil, nil, nil, 654, nil, 654, 654, 654, - 654, 654, 654, 654, nil, nil, nil, nil, nil, 654, - 654, 654, 654, 654, 654, 654, nil, nil, 654, nil, - nil, nil, nil, nil, 654, 654, nil, 654, 654, 654, - nil, 654, 654, 654, 654, 654, nil, 654, 654, 654, - nil, 654, 654, nil, 654, 654, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 654, nil, nil, - 654, nil, nil, 654, nil, nil, 654, nil, 654, nil, - nil, nil, 654, nil, nil, nil, nil, nil, nil, nil, - 654, nil, nil, nil, nil, 654, 654, 654, 654, 654, - 654, nil, nil, nil, 654, 654, nil, nil, nil, 658, - 658, 658, 654, 658, nil, 654, nil, 658, 658, nil, - 654, 654, 658, nil, 658, 658, 658, 658, 658, 658, - 658, nil, nil, nil, nil, nil, 658, 658, 658, 658, - 658, 658, 658, nil, nil, 658, nil, nil, nil, nil, - nil, nil, 658, nil, nil, 658, 658, nil, 658, 658, - 658, 658, 658, nil, 658, 658, 658, nil, 658, 658, - nil, 658, 658, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 658, nil, nil, 658, nil, nil, - 658, nil, nil, 658, nil, nil, nil, nil, nil, 658, - nil, nil, nil, nil, nil, nil, nil, 658, nil, nil, - nil, nil, 658, 658, 658, 658, 658, 658, nil, nil, - nil, 658, 658, nil, nil, nil, nil, nil, nil, 658, - nil, nil, 658, nil, nil, nil, nil, 658, 658, 667, - 667, 667, 667, 667, nil, nil, nil, 667, 667, nil, - nil, nil, 667, nil, 667, 667, 667, 667, 667, 667, - 667, nil, nil, nil, nil, nil, 667, 667, 667, 667, - 667, 667, 667, nil, nil, 667, nil, nil, nil, nil, - nil, 667, 667, nil, 667, 667, 667, nil, 667, 667, - 667, 667, 667, nil, 667, 667, 667, nil, 667, 667, - nil, 667, 667, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 667, nil, nil, 667, nil, nil, - 667, nil, nil, 667, nil, 667, nil, nil, nil, 667, - nil, nil, nil, nil, nil, nil, nil, 667, nil, nil, - nil, nil, 667, 667, 667, 667, 667, 667, nil, nil, - nil, 667, 667, nil, nil, nil, 670, 670, 670, 667, - 670, nil, 667, nil, 670, 670, nil, 667, 667, 670, - nil, 670, 670, 670, 670, 670, 670, 670, nil, nil, - nil, nil, nil, 670, 670, 670, 670, 670, 670, 670, - nil, nil, 670, nil, nil, nil, nil, nil, nil, 670, - nil, nil, 670, 670, nil, 670, 670, 670, 670, 670, - 670, 670, 670, 670, nil, 670, 670, nil, 670, 670, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 670, nil, nil, 670, nil, nil, 670, nil, nil, - 670, nil, 670, nil, 670, nil, 670, nil, nil, nil, - nil, nil, nil, nil, 670, nil, nil, nil, nil, 670, - 670, 670, 670, 670, 670, nil, nil, nil, 670, 670, - nil, nil, nil, 671, 671, 671, 670, 671, nil, 670, - nil, 671, 671, nil, 670, 670, 671, nil, 671, 671, - 671, 671, 671, 671, 671, nil, nil, nil, nil, nil, - 671, 671, 671, 671, 671, 671, 671, nil, nil, 671, - nil, nil, nil, nil, nil, nil, 671, nil, nil, 671, - 671, nil, 671, 671, 671, 671, 671, 671, 671, 671, - 671, nil, 671, 671, nil, 671, 671, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 671, nil, - nil, 671, nil, nil, 671, nil, nil, 671, nil, nil, - nil, 671, nil, 671, nil, nil, nil, nil, nil, nil, - nil, 671, nil, nil, nil, nil, 671, 671, 671, 671, - 671, 671, nil, nil, nil, 671, 671, nil, nil, nil, - nil, nil, nil, 671, nil, nil, 671, nil, nil, nil, - nil, 671, 671, 677, 677, 677, 677, 677, nil, nil, - nil, 677, 677, nil, nil, nil, 677, nil, 677, 677, - 677, 677, 677, 677, 677, nil, nil, nil, nil, nil, - 677, 677, 677, 677, 677, 677, 677, nil, nil, 677, - nil, nil, nil, nil, nil, 677, 677, nil, 677, 677, - 677, nil, 677, 677, 677, 677, 677, nil, 677, 677, - 677, nil, 677, 677, nil, 677, 677, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 677, nil, - nil, 677, nil, nil, 677, nil, nil, 677, nil, 677, - nil, nil, nil, 677, nil, nil, nil, nil, nil, nil, - nil, 677, nil, nil, nil, nil, 677, 677, 677, 677, - 677, 677, nil, nil, nil, 677, 677, nil, nil, nil, - nil, nil, nil, 677, nil, nil, 677, nil, nil, nil, - nil, 677, 677, 678, 678, 678, 678, 678, nil, nil, - nil, 678, 678, nil, nil, nil, 678, nil, 678, 678, - 678, 678, 678, 678, 678, nil, nil, nil, nil, nil, - 678, 678, 678, 678, 678, 678, 678, nil, nil, 678, - nil, nil, nil, nil, nil, 678, 678, nil, 678, 678, - 678, nil, 678, 678, 678, 678, 678, nil, 678, 678, - 678, nil, 678, 678, nil, 678, 678, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 678, nil, - nil, 678, nil, nil, 678, nil, nil, 678, nil, 678, - nil, nil, nil, 678, nil, nil, nil, nil, nil, nil, - nil, 678, nil, nil, nil, nil, 678, 678, 678, 678, - 678, 678, nil, nil, nil, 678, 678, nil, nil, nil, - 682, 682, 682, 678, 682, nil, 678, nil, 682, 682, - nil, 678, 678, 682, nil, 682, 682, 682, 682, 682, - 682, 682, nil, nil, nil, nil, nil, 682, 682, 682, - 682, 682, 682, 682, nil, nil, 682, nil, nil, nil, - nil, nil, nil, 682, nil, nil, 682, 682, nil, 682, - 682, 682, 682, 682, nil, 682, 682, 682, nil, 682, - 682, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 682, nil, nil, 682, nil, - nil, 682, nil, nil, 682, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 682, 682, 682, 682, 682, 682, nil, - nil, nil, 682, 682, nil, nil, nil, 694, 694, 694, - 682, 694, nil, 682, nil, 694, 694, nil, 682, 682, - 694, nil, 694, 694, 694, 694, 694, 694, 694, nil, - nil, nil, nil, nil, 694, 694, 694, 694, 694, 694, - 694, nil, nil, 694, nil, nil, nil, nil, nil, nil, - 694, nil, nil, 694, 694, nil, 694, 694, 694, 694, - 694, nil, 694, 694, 694, nil, 694, 694, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 694, nil, nil, 694, nil, nil, 694, nil, - nil, 694, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 694, 694, 694, 694, 694, 694, nil, nil, nil, 694, - 694, nil, nil, nil, 700, 700, 700, 694, 700, nil, - 694, nil, 700, 700, nil, 694, 694, 700, nil, 700, - 700, 700, 700, 700, 700, 700, nil, nil, nil, nil, - nil, 700, 700, 700, 700, 700, 700, 700, nil, nil, - 700, nil, nil, nil, nil, nil, nil, 700, nil, nil, - 700, 700, nil, 700, 700, 700, 700, 700, nil, 700, - 700, 700, nil, 700, 700, nil, 700, 700, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 700, - nil, nil, 700, nil, nil, 700, nil, nil, 700, nil, - 700, nil, nil, nil, 700, nil, nil, nil, nil, nil, - nil, nil, 700, nil, nil, nil, nil, 700, 700, 700, - 700, 700, 700, nil, nil, nil, 700, 700, nil, nil, - nil, 731, 731, 731, 700, 731, nil, 700, nil, 731, - 731, nil, 700, 700, 731, nil, 731, 731, 731, 731, - 731, 731, 731, nil, nil, nil, nil, nil, 731, 731, - 731, 731, 731, 731, 731, nil, nil, 731, nil, nil, - nil, nil, nil, nil, 731, nil, nil, 731, 731, nil, - 731, 731, 731, 731, 731, nil, 731, 731, 731, nil, - 731, 731, nil, 731, 731, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 731, nil, nil, 731, - nil, nil, 731, nil, nil, 731, nil, 731, nil, nil, - nil, 731, nil, nil, nil, nil, nil, nil, nil, 731, - nil, nil, nil, nil, 731, 731, 731, 731, 731, 731, - nil, nil, nil, 731, 731, nil, nil, nil, 738, 738, - 738, 731, 738, nil, 731, nil, 738, 738, nil, 731, - 731, 738, nil, 738, 738, 738, 738, 738, 738, 738, - nil, nil, nil, nil, nil, 738, 738, 738, 738, 738, - 738, 738, nil, nil, 738, nil, nil, nil, nil, nil, - nil, 738, nil, nil, 738, 738, nil, 738, 738, 738, - 738, 738, nil, 738, 738, 738, nil, 738, 738, nil, - 738, 738, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 738, nil, nil, 738, nil, nil, 738, - nil, nil, 738, nil, nil, nil, nil, nil, 738, nil, - nil, nil, nil, nil, nil, nil, 738, nil, nil, nil, - nil, 738, 738, 738, 738, 738, 738, nil, nil, nil, - 738, 738, nil, nil, nil, nil, nil, nil, 738, nil, - nil, 738, nil, nil, nil, nil, 738, 738, 743, 743, - 743, 743, 743, nil, nil, nil, 743, 743, nil, nil, - nil, 743, nil, 743, 743, 743, 743, 743, 743, 743, - nil, nil, nil, nil, nil, 743, 743, 743, 743, 743, - 743, 743, nil, nil, 743, nil, nil, nil, nil, nil, - 743, 743, nil, 743, 743, 743, nil, 743, 743, 743, - 743, 743, nil, 743, 743, 743, nil, 743, 743, nil, - 743, 743, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 743, nil, nil, 743, nil, nil, 743, - nil, nil, 743, nil, 743, nil, nil, nil, 743, nil, - nil, nil, nil, nil, nil, nil, 743, nil, nil, nil, - nil, 743, 743, 743, 743, 743, 743, nil, nil, nil, - 743, 743, nil, nil, nil, nil, nil, nil, 743, nil, - nil, 743, nil, nil, nil, nil, 743, 743, 747, 747, - 747, 747, 747, nil, nil, nil, 747, 747, nil, nil, - nil, 747, nil, 747, 747, 747, 747, 747, 747, 747, - nil, nil, nil, nil, nil, 747, 747, 747, 747, 747, - 747, 747, nil, nil, 747, nil, nil, nil, nil, nil, - 747, 747, nil, 747, 747, 747, nil, 747, 747, 747, - 747, 747, nil, 747, 747, 747, nil, 747, 747, nil, - 747, 747, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 747, nil, nil, 747, nil, nil, 747, - nil, nil, 747, nil, 747, nil, nil, nil, 747, nil, - nil, nil, nil, nil, nil, nil, 747, nil, nil, nil, - nil, 747, 747, 747, 747, 747, 747, nil, nil, nil, - 747, 747, nil, nil, nil, nil, nil, nil, 747, nil, - nil, 747, nil, nil, nil, nil, 747, 747, 748, 748, - 748, 748, 748, nil, nil, nil, 748, 748, nil, nil, - nil, 748, nil, 748, 748, 748, 748, 748, 748, 748, - nil, nil, nil, nil, nil, 748, 748, 748, 748, 748, - 748, 748, nil, nil, 748, nil, nil, nil, nil, nil, - 748, 748, nil, 748, 748, 748, nil, 748, 748, 748, - 748, 748, nil, 748, 748, 748, nil, 748, 748, nil, - 748, 748, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 748, nil, nil, 748, nil, nil, 748, - nil, nil, 748, nil, 748, nil, nil, nil, 748, nil, - nil, nil, nil, nil, nil, nil, 748, nil, nil, nil, - nil, 748, 748, 748, 748, 748, 748, nil, nil, nil, - 748, 748, nil, nil, nil, 755, 755, 755, 748, 755, - nil, 748, nil, 755, 755, nil, 748, 748, 755, nil, - 755, 755, 755, 755, 755, 755, 755, nil, nil, nil, - nil, nil, 755, 755, 755, 755, 755, 755, 755, nil, - nil, 755, nil, nil, nil, nil, nil, nil, 755, nil, - nil, 755, 755, nil, 755, 755, 755, 755, 755, nil, - 755, 755, 755, nil, 755, 755, nil, 755, 755, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 755, nil, nil, 755, nil, nil, 755, nil, nil, 755, - nil, nil, nil, nil, nil, 755, nil, nil, nil, nil, - nil, nil, nil, 755, nil, nil, nil, nil, 755, 755, - 755, 755, 755, 755, nil, nil, nil, 755, 755, nil, - nil, nil, nil, nil, nil, 755, nil, nil, 755, nil, - nil, nil, nil, 755, 755, 769, 769, 769, 769, 769, - nil, nil, nil, 769, 769, nil, nil, nil, 769, nil, - 769, 769, 769, 769, 769, 769, 769, nil, nil, nil, - nil, nil, 769, 769, 769, 769, 769, 769, 769, nil, - nil, 769, nil, nil, nil, nil, nil, 769, 769, nil, - 769, 769, 769, nil, 769, 769, 769, 769, 769, nil, - 769, 769, 769, nil, 769, 769, nil, 769, 769, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 769, nil, nil, 769, nil, nil, 769, nil, nil, 769, - nil, 769, nil, nil, nil, 769, nil, nil, nil, nil, - nil, nil, nil, 769, nil, nil, nil, nil, 769, 769, - 769, 769, 769, 769, nil, nil, nil, 769, 769, nil, - nil, nil, 775, 775, 775, 769, 775, nil, 769, nil, - 775, 775, nil, 769, 769, 775, nil, 775, 775, 775, - 775, 775, 775, 775, nil, nil, nil, nil, nil, 775, - 775, 775, 775, 775, 775, 775, nil, nil, 775, nil, - nil, nil, nil, nil, nil, 775, nil, nil, 775, 775, - nil, 775, 775, 775, 775, 775, nil, 775, 775, 775, - nil, 775, 775, nil, 775, 775, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 775, nil, nil, - 775, nil, nil, 775, nil, nil, 775, nil, nil, nil, - nil, nil, 775, nil, nil, nil, nil, nil, nil, nil, - 775, nil, nil, nil, nil, 775, 775, 775, 775, 775, - 775, nil, nil, nil, 775, 775, nil, nil, nil, 776, - 776, 776, 775, 776, nil, 775, nil, 776, 776, nil, - 775, 775, 776, nil, 776, 776, 776, 776, 776, 776, - 776, nil, nil, nil, nil, nil, 776, 776, 776, 776, - 776, 776, 776, nil, nil, 776, nil, nil, nil, nil, - nil, nil, 776, nil, nil, 776, 776, nil, 776, 776, - 776, 776, 776, nil, 776, 776, 776, nil, 776, 776, - nil, 776, 776, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 776, nil, nil, 776, nil, nil, - 776, nil, nil, 776, nil, nil, nil, nil, nil, 776, - nil, nil, nil, nil, nil, nil, nil, 776, nil, nil, - nil, nil, 776, 776, 776, 776, 776, 776, nil, nil, - nil, 776, 776, nil, nil, nil, 777, 777, 777, 776, - 777, nil, 776, nil, 777, 777, nil, 776, 776, 777, - nil, 777, 777, 777, 777, 777, 777, 777, nil, nil, - nil, nil, nil, 777, 777, 777, 777, 777, 777, 777, - nil, nil, 777, nil, nil, nil, nil, nil, nil, 777, - nil, nil, 777, 777, nil, 777, 777, 777, 777, 777, - nil, 777, 777, 777, nil, 777, 777, nil, 777, 777, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 777, nil, nil, 777, nil, nil, 777, nil, nil, - 777, nil, nil, nil, nil, nil, 777, nil, nil, nil, - nil, nil, nil, nil, 777, nil, nil, nil, nil, 777, - 777, 777, 777, 777, 777, nil, nil, nil, 777, 777, - nil, nil, nil, 788, 788, 788, 777, 788, nil, 777, - nil, 788, 788, nil, 777, 777, 788, nil, 788, 788, - 788, 788, 788, 788, 788, nil, nil, nil, nil, nil, - 788, 788, 788, 788, 788, 788, 788, nil, nil, 788, - nil, nil, nil, nil, nil, nil, 788, nil, nil, 788, - 788, nil, 788, 788, 788, 788, 788, nil, 788, 788, - 788, nil, 788, 788, nil, 788, 788, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 788, nil, - nil, 788, nil, nil, 788, nil, nil, 788, nil, nil, - nil, nil, nil, 788, nil, nil, nil, nil, nil, nil, - nil, 788, nil, nil, nil, nil, 788, 788, 788, 788, - 788, 788, nil, nil, nil, 788, 788, nil, nil, nil, - 789, 789, 789, 788, 789, nil, 788, nil, 789, 789, - nil, 788, 788, 789, nil, 789, 789, 789, 789, 789, - 789, 789, nil, nil, nil, nil, nil, 789, 789, 789, - 789, 789, 789, 789, nil, nil, 789, nil, nil, nil, - nil, nil, nil, 789, nil, nil, 789, 789, nil, 789, - 789, 789, 789, 789, nil, 789, 789, 789, nil, 789, - 789, nil, 789, 789, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 789, nil, nil, 789, nil, - nil, 789, nil, nil, 789, nil, nil, nil, nil, nil, - 789, nil, nil, nil, nil, nil, nil, nil, 789, nil, - nil, nil, nil, 789, 789, 789, 789, 789, 789, nil, - nil, nil, 789, 789, nil, nil, nil, 790, 790, 790, - 789, 790, nil, 789, nil, 790, 790, nil, 789, 789, - 790, nil, 790, 790, 790, 790, 790, 790, 790, nil, - nil, nil, nil, nil, 790, 790, 790, 790, 790, 790, - 790, nil, nil, 790, nil, nil, nil, nil, nil, nil, - 790, nil, nil, 790, 790, nil, 790, 790, 790, 790, - 790, nil, 790, 790, 790, nil, 790, 790, nil, 790, - 790, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 790, nil, nil, 790, nil, nil, 790, nil, - nil, 790, nil, nil, nil, nil, nil, 790, nil, nil, - nil, nil, nil, nil, nil, 790, nil, nil, nil, nil, - 790, 790, 790, 790, 790, 790, nil, nil, nil, 790, - 790, nil, nil, nil, 802, 802, 802, 790, 802, nil, - 790, nil, 802, 802, nil, 790, 790, 802, nil, 802, - 802, 802, 802, 802, 802, 802, nil, nil, nil, nil, - nil, 802, 802, 802, 802, 802, 802, 802, nil, nil, - 802, nil, nil, nil, nil, nil, nil, 802, nil, nil, - 802, 802, nil, 802, 802, 802, 802, 802, nil, 802, - 802, 802, nil, 802, 802, nil, 802, 802, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 802, - nil, nil, 802, nil, nil, 802, nil, nil, 802, nil, - 802, nil, nil, nil, 802, nil, nil, nil, nil, nil, - nil, nil, 802, nil, nil, nil, nil, 802, 802, 802, - 802, 802, 802, nil, nil, nil, 802, 802, nil, nil, - nil, nil, nil, nil, 802, nil, nil, 802, nil, nil, - nil, nil, 802, 802, 813, 813, 813, 813, 813, nil, - nil, nil, 813, 813, nil, nil, nil, 813, nil, 813, - 813, 813, 813, 813, 813, 813, nil, nil, nil, nil, - nil, 813, 813, 813, 813, 813, 813, 813, nil, nil, - 813, nil, nil, nil, nil, nil, 813, 813, nil, 813, - 813, 813, nil, 813, 813, 813, 813, 813, nil, 813, - 813, 813, nil, 813, 813, nil, 813, 813, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 813, - nil, nil, 813, nil, nil, 813, nil, nil, 813, nil, - 813, nil, nil, nil, 813, nil, nil, nil, nil, nil, - nil, nil, 813, nil, nil, nil, nil, 813, 813, 813, - 813, 813, 813, nil, nil, nil, 813, 813, nil, nil, - nil, 832, 832, 832, 813, 832, nil, 813, nil, 832, - 832, nil, 813, 813, 832, nil, 832, 832, 832, 832, - 832, 832, 832, nil, nil, nil, nil, nil, 832, 832, - 832, 832, 832, 832, 832, nil, nil, 832, nil, nil, - nil, nil, nil, nil, 832, nil, nil, 832, 832, nil, - 832, 832, 832, 832, 832, nil, 832, 832, 832, nil, - 832, 832, nil, 832, 832, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 832, nil, nil, 832, - nil, nil, 832, nil, nil, 832, nil, nil, nil, nil, - nil, 832, nil, nil, nil, nil, nil, nil, nil, 832, - nil, nil, nil, nil, 832, 832, 832, 832, 832, 832, - nil, nil, nil, 832, 832, nil, nil, nil, nil, nil, - nil, 832, nil, nil, 832, nil, nil, nil, nil, 832, - 832, 834, 834, 834, 834, 834, nil, nil, nil, 834, - 834, nil, nil, nil, 834, nil, 834, 834, 834, 834, - 834, 834, 834, nil, nil, nil, nil, nil, 834, 834, - 834, 834, 834, 834, 834, nil, nil, 834, nil, nil, - nil, nil, nil, 834, 834, nil, 834, 834, 834, nil, - 834, 834, 834, 834, 834, nil, 834, 834, 834, nil, - 834, 834, nil, 834, 834, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 834, nil, nil, 834, - nil, nil, 834, nil, nil, 834, nil, 834, nil, nil, - nil, 834, nil, nil, nil, nil, nil, nil, nil, 834, - nil, nil, nil, nil, 834, 834, 834, 834, 834, 834, - nil, nil, nil, 834, 834, nil, nil, nil, nil, nil, - nil, 834, nil, nil, 834, nil, nil, nil, nil, 834, - 834, 835, 835, 835, 835, 835, nil, nil, nil, 835, - 835, nil, nil, nil, 835, nil, 835, 835, 835, 835, - 835, 835, 835, nil, nil, nil, nil, nil, 835, 835, - 835, 835, 835, 835, 835, nil, nil, 835, nil, nil, - nil, nil, nil, 835, 835, nil, 835, 835, 835, nil, - 835, 835, 835, 835, 835, nil, 835, 835, 835, nil, - 835, 835, nil, 835, 835, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 835, nil, nil, 835, - nil, nil, 835, nil, nil, 835, nil, 835, nil, nil, - nil, 835, nil, nil, nil, nil, nil, nil, nil, 835, - nil, nil, nil, nil, 835, 835, 835, 835, 835, 835, - nil, nil, nil, 835, 835, nil, nil, nil, 862, 862, - 862, 835, 862, nil, 835, nil, 862, 862, nil, 835, - 835, 862, nil, 862, 862, 862, 862, 862, 862, 862, - nil, nil, nil, nil, nil, 862, 862, 862, 862, 862, - 862, 862, nil, nil, 862, nil, nil, nil, nil, nil, - nil, 862, nil, nil, 862, 862, nil, 862, 862, 862, - 862, 862, nil, 862, 862, 862, nil, 862, 862, nil, - 862, 862, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 862, nil, nil, 862, nil, nil, 862, - nil, nil, 862, nil, nil, nil, nil, nil, 862, nil, - nil, nil, nil, nil, nil, nil, 862, nil, nil, nil, - nil, 862, 862, 862, 862, 862, 862, nil, nil, nil, - 862, 862, nil, nil, nil, 876, 876, 876, 862, 876, - nil, 862, nil, 876, 876, nil, 862, 862, 876, nil, - 876, 876, 876, 876, 876, 876, 876, nil, nil, nil, - nil, nil, 876, 876, 876, 876, 876, 876, 876, nil, - nil, 876, nil, nil, nil, nil, nil, nil, 876, nil, - nil, 876, 876, nil, 876, 876, 876, 876, 876, nil, - 876, 876, 876, nil, 876, 876, nil, 876, 876, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 876, nil, nil, 876, nil, nil, 876, nil, nil, 876, - nil, nil, nil, nil, nil, 876, nil, nil, nil, nil, - nil, nil, nil, 876, nil, nil, nil, nil, 876, 876, - 876, 876, 876, 876, nil, nil, nil, 876, 876, nil, - nil, nil, 877, 877, 877, 876, 877, nil, 876, nil, - 877, 877, nil, 876, 876, 877, nil, 877, 877, 877, - 877, 877, 877, 877, nil, nil, nil, nil, nil, 877, - 877, 877, 877, 877, 877, 877, nil, nil, 877, nil, - nil, nil, nil, nil, nil, 877, nil, nil, 877, 877, - nil, 877, 877, 877, 877, 877, nil, 877, 877, 877, - nil, 877, 877, nil, 877, 877, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 877, nil, nil, - 877, nil, nil, 877, nil, nil, 877, nil, nil, nil, - nil, nil, 877, nil, nil, nil, nil, nil, nil, nil, - 877, nil, nil, nil, nil, 877, 877, 877, 877, 877, - 877, nil, nil, nil, 877, 877, nil, nil, nil, 881, - 881, 881, 877, 881, nil, 877, nil, 881, 881, nil, - 877, 877, 881, nil, 881, 881, 881, 881, 881, 881, - 881, nil, nil, nil, nil, nil, 881, 881, 881, 881, - 881, 881, 881, nil, nil, 881, nil, nil, nil, nil, - nil, nil, 881, nil, nil, 881, 881, nil, 881, 881, - 881, 881, 881, 881, 881, 881, 881, nil, 881, 881, - nil, 881, 881, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 881, nil, nil, 881, nil, nil, - 881, nil, nil, 881, nil, nil, nil, 881, nil, 881, - nil, nil, nil, nil, nil, nil, nil, 881, nil, nil, - nil, nil, 881, 881, 881, 881, 881, 881, nil, nil, - nil, 881, 881, nil, nil, nil, nil, nil, nil, 881, - nil, nil, 881, nil, nil, nil, nil, 881, 881, 886, - 886, 886, 886, 886, nil, nil, nil, 886, 886, nil, - nil, nil, 886, nil, 886, 886, 886, 886, 886, 886, - 886, nil, nil, nil, nil, nil, 886, 886, 886, 886, - 886, 886, 886, nil, nil, 886, nil, nil, nil, nil, - nil, 886, 886, nil, 886, 886, 886, nil, 886, 886, - 886, 886, 886, nil, 886, 886, 886, nil, 886, 886, - nil, 886, 886, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 886, nil, nil, 886, nil, nil, - 886, nil, nil, 886, nil, 886, nil, nil, nil, 886, - nil, nil, nil, nil, nil, nil, nil, 886, nil, nil, - nil, nil, 886, 886, 886, 886, 886, 886, nil, nil, - nil, 886, 886, nil, nil, nil, 890, 890, 890, 886, - 890, nil, 886, nil, 890, 890, nil, 886, 886, 890, - nil, 890, 890, 890, 890, 890, 890, 890, nil, nil, - nil, nil, nil, 890, 890, 890, 890, 890, 890, 890, - nil, nil, 890, nil, nil, nil, nil, nil, nil, 890, - nil, nil, 890, 890, nil, 890, 890, 890, 890, 890, - nil, 890, 890, 890, nil, 890, 890, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 890, nil, nil, 890, nil, nil, 890, nil, nil, - 890, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 890, - 890, 890, 890, 890, 890, nil, nil, nil, 890, 890, - nil, nil, nil, 900, 900, 900, 890, 900, nil, 890, - nil, 900, 900, nil, 890, 890, 900, nil, 900, 900, - 900, 900, 900, 900, 900, nil, nil, nil, nil, nil, - 900, 900, 900, 900, 900, 900, 900, nil, nil, 900, - nil, nil, nil, nil, nil, nil, 900, nil, nil, 900, - 900, nil, 900, 900, 900, 900, 900, nil, 900, 900, - 900, nil, 900, 900, nil, 900, 900, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 900, nil, - nil, 900, nil, nil, 900, nil, nil, 900, nil, 900, - nil, nil, nil, 900, nil, nil, nil, nil, nil, nil, - nil, 900, nil, nil, nil, nil, 900, 900, 900, 900, - 900, 900, nil, nil, nil, 900, 900, nil, nil, nil, - nil, nil, nil, 900, nil, nil, 900, nil, nil, nil, - nil, 900, 900, 901, 901, 901, 901, 901, nil, nil, - nil, 901, 901, nil, nil, nil, 901, nil, 901, 901, - 901, 901, 901, 901, 901, nil, nil, nil, nil, nil, - 901, 901, 901, 901, 901, 901, 901, nil, nil, 901, - nil, nil, nil, nil, nil, 901, 901, nil, 901, 901, - 901, nil, 901, 901, 901, 901, 901, nil, 901, 901, - 901, nil, 901, 901, nil, 901, 901, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 901, nil, - nil, 901, nil, nil, 901, nil, nil, 901, nil, 901, - nil, nil, nil, 901, nil, nil, nil, nil, nil, nil, - nil, 901, nil, nil, nil, nil, 901, 901, 901, 901, - 901, 901, nil, nil, nil, 901, 901, nil, nil, nil, - nil, nil, nil, 901, nil, nil, 901, nil, nil, nil, - nil, 901, 901, 904, 904, 904, 904, 904, nil, nil, - nil, 904, 904, nil, nil, nil, 904, nil, 904, 904, - 904, 904, 904, 904, 904, nil, nil, nil, nil, nil, - 904, 904, 904, 904, 904, 904, 904, nil, nil, 904, - nil, nil, nil, nil, nil, 904, 904, nil, 904, 904, - 904, nil, 904, 904, 904, 904, 904, nil, 904, 904, - 904, nil, 904, 904, nil, 904, 904, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 904, nil, - nil, 904, nil, nil, 904, nil, nil, 904, nil, 904, - nil, nil, nil, 904, nil, nil, nil, nil, nil, nil, - nil, 904, nil, nil, nil, nil, 904, 904, 904, 904, - 904, 904, nil, nil, nil, 904, 904, nil, nil, nil, - 921, 921, 921, 904, 921, nil, 904, nil, 921, 921, - nil, 904, 904, 921, nil, 921, 921, 921, 921, 921, - 921, 921, nil, nil, nil, nil, nil, 921, 921, 921, - 921, 921, 921, 921, nil, nil, 921, nil, nil, nil, - nil, nil, nil, 921, nil, nil, 921, 921, nil, 921, - 921, 921, 921, 921, nil, 921, 921, 921, nil, 921, - 921, nil, 921, 921, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 921, nil, nil, 921, nil, - nil, 921, nil, nil, 921, nil, 921, nil, 921, nil, - 921, nil, nil, nil, nil, nil, nil, nil, 921, nil, - nil, nil, nil, 921, 921, 921, 921, 921, 921, nil, - nil, nil, 921, 921, nil, nil, nil, nil, nil, nil, - 921, nil, nil, 921, nil, nil, nil, nil, 921, 921, - 923, 923, 923, 923, 923, nil, nil, nil, 923, 923, - nil, nil, nil, 923, nil, 923, 923, 923, 923, 923, - 923, 923, nil, nil, nil, nil, nil, 923, 923, 923, - 923, 923, 923, 923, nil, nil, 923, nil, nil, nil, - nil, nil, 923, 923, nil, 923, 923, 923, nil, 923, - 923, 923, 923, 923, nil, 923, 923, 923, nil, 923, - 923, nil, 923, 923, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 923, nil, nil, 923, nil, - nil, 923, nil, nil, 923, nil, 923, nil, nil, nil, - 923, nil, nil, nil, nil, nil, nil, nil, 923, nil, - nil, nil, nil, 923, 923, 923, 923, 923, 923, nil, - nil, nil, 923, 923, nil, nil, nil, nil, nil, nil, - 923, nil, nil, 923, nil, nil, nil, nil, 923, 923, - 930, 930, 930, 930, 930, nil, nil, nil, 930, 930, - nil, nil, nil, 930, nil, 930, 930, 930, 930, 930, - 930, 930, nil, nil, nil, nil, nil, 930, 930, 930, - 930, 930, 930, 930, nil, nil, 930, nil, nil, nil, - nil, nil, 930, 930, nil, 930, 930, 930, nil, 930, - 930, 930, 930, 930, nil, 930, 930, 930, nil, 930, - 930, nil, 930, 930, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 930, nil, nil, 930, nil, - nil, 930, nil, nil, 930, nil, 930, nil, nil, nil, - 930, nil, nil, nil, nil, nil, nil, nil, 930, nil, - nil, nil, nil, 930, 930, 930, 930, 930, 930, nil, - nil, nil, 930, 930, nil, nil, nil, nil, nil, nil, - 930, nil, nil, 930, nil, nil, nil, nil, 930, 930, - 935, 935, 935, 935, 935, nil, nil, nil, 935, 935, - nil, nil, nil, 935, nil, 935, 935, 935, 935, 935, - 935, 935, nil, nil, nil, nil, nil, 935, 935, 935, - 935, 935, 935, 935, nil, nil, 935, nil, nil, nil, - nil, nil, 935, 935, nil, 935, 935, 935, nil, 935, - 935, 935, 935, 935, nil, 935, 935, 935, nil, 935, - 935, nil, 935, 935, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 935, nil, nil, 935, nil, - nil, 935, nil, nil, 935, nil, 935, nil, nil, nil, - 935, nil, nil, nil, nil, nil, nil, nil, 935, nil, - nil, nil, nil, 935, 935, 935, 935, 935, 935, nil, - nil, nil, 935, 935, nil, nil, nil, nil, nil, nil, - 935, nil, nil, 935, nil, nil, nil, nil, 935, 935, - 943, 943, 943, 943, 943, nil, nil, nil, 943, 943, - nil, nil, nil, 943, nil, 943, 943, 943, 943, 943, - 943, 943, nil, nil, nil, nil, nil, 943, 943, 943, - 943, 943, 943, 943, nil, nil, 943, nil, nil, nil, - nil, nil, 943, 943, nil, 943, 943, 943, nil, 943, - 943, 943, 943, 943, nil, 943, 943, 943, nil, 943, - 943, nil, 943, 943, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 943, nil, nil, 943, nil, - nil, 943, nil, nil, 943, nil, 943, nil, nil, nil, - 943, nil, nil, nil, nil, nil, nil, nil, 943, nil, - nil, nil, nil, 943, 943, 943, 943, 943, 943, nil, - nil, nil, 943, 943, nil, nil, nil, 945, 945, 945, - 943, 945, nil, 943, nil, 945, 945, nil, 943, 943, - 945, nil, 945, 945, 945, 945, 945, 945, 945, nil, - nil, nil, nil, nil, 945, 945, 945, 945, 945, 945, - 945, nil, nil, 945, nil, nil, nil, nil, nil, nil, - 945, nil, nil, 945, 945, nil, 945, 945, 945, 945, - 945, 945, 945, 945, 945, nil, 945, 945, nil, 945, - 945, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 945, nil, nil, 945, nil, nil, 945, nil, - nil, 945, nil, 945, nil, nil, nil, 945, nil, nil, - nil, nil, nil, nil, nil, 945, nil, nil, nil, 436, - 945, 945, 945, 945, 945, 945, 436, 436, 436, 945, - 945, nil, 436, 436, nil, 436, nil, 945, nil, nil, - 945, nil, nil, nil, 436, 945, 945, nil, nil, nil, - nil, nil, nil, nil, nil, 436, 436, nil, 436, 436, - 436, 436, 436, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 436, 436, 436, 436, - 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, - 436, 438, nil, 436, 436, 436, nil, 436, 438, 438, - 438, 436, nil, nil, 438, 438, nil, 438, 436, nil, - 436, nil, 436, 436, 436, 436, 436, 436, 436, nil, - 436, 436, 436, nil, nil, nil, nil, 438, 438, nil, - 438, 438, 438, 438, 438, 436, 436, nil, 436, nil, - 436, nil, nil, 436, nil, 436, nil, 436, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 438, 438, - 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, - 438, 438, 438, nil, nil, 438, 438, 438, nil, 438, - nil, nil, nil, 438, nil, nil, nil, nil, nil, nil, - 438, nil, 438, nil, 438, 438, 438, 438, 438, 438, - 438, nil, 438, nil, 438, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 438, 438, nil, - 438, nil, 438, 644, nil, 438, nil, 438, nil, 438, - 644, 644, 644, nil, nil, 644, 644, 644, nil, 644, - nil, nil, nil, nil, nil, nil, nil, nil, 644, 644, - 644, nil, nil, nil, nil, nil, nil, nil, nil, 644, - 644, nil, 644, 644, 644, 644, 644, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 644, 644, 644, 644, 644, 644, 644, 644, 644, 644, - 644, 644, 644, 644, 644, nil, nil, 644, 644, 644, - nil, 644, 644, nil, nil, 644, nil, nil, 644, nil, - 644, nil, 644, nil, 644, nil, 644, 644, 644, 644, - 644, 644, 644, nil, 644, 644, 644, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 644, - 644, 644, 644, nil, 644, 645, nil, 644, nil, 644, - nil, 644, 645, 645, 645, nil, nil, 645, 645, 645, - nil, 645, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 645, 645, nil, nil, nil, nil, nil, nil, nil, - nil, 645, 645, nil, 645, 645, 645, 645, 645, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 645, 645, 645, 645, 645, 645, 645, 645, - 645, 645, 645, 645, 645, 645, 645, nil, nil, 645, - 645, 645, nil, 645, 645, nil, nil, 645, nil, nil, - 645, nil, 645, nil, 645, nil, 645, nil, 645, 645, - 645, 645, 645, 645, 645, nil, 645, nil, 645, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 645, 645, 645, 645, nil, 645, 28, nil, 645, - nil, 645, nil, 645, 28, 28, 28, nil, nil, 28, - 28, 28, nil, 28, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 28, 28, nil, nil, nil, nil, nil, - nil, nil, nil, 28, 28, nil, 28, 28, 28, 28, - 28, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, nil, - nil, 28, 28, 28, nil, nil, 28, nil, 28, 28, - nil, nil, 28, nil, 28, nil, 28, nil, 28, nil, - 28, 28, 28, 28, 28, 28, 28, nil, 28, nil, - 28, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 28, 28, 28, 28, 50, 28, nil, - nil, 28, nil, 28, 50, 50, 50, nil, nil, 50, - 50, 50, nil, 50, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 50, 50, nil, nil, nil, nil, - nil, nil, nil, 50, 50, nil, 50, 50, 50, 50, - 50, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 50, 50, 50, 50, 50, 50, - 50, 50, 50, 50, 50, 50, 50, 50, 50, nil, - nil, 50, 50, 50, nil, nil, 50, nil, nil, 50, - nil, nil, 50, nil, 50, nil, 50, nil, 50, nil, - 50, 50, 50, 50, 50, 50, 50, nil, 50, nil, - 50, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 50, 50, 50, 50, 494, 50, nil, - 50, 50, nil, 50, 494, 494, 494, nil, nil, 494, - 494, 494, nil, 494, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 494, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 494, 494, nil, 494, 494, 494, 494, - 494, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 495, nil, nil, nil, nil, nil, - nil, 495, 495, 495, nil, nil, 495, 495, 495, nil, - 495, nil, nil, nil, nil, 494, 494, nil, nil, nil, - 495, nil, nil, 494, nil, nil, nil, nil, 494, 494, - 495, 495, nil, 495, 495, 495, 495, 495, nil, nil, - nil, nil, 918, nil, 918, 918, 918, 918, 918, nil, - 494, nil, nil, nil, nil, nil, nil, nil, 918, nil, - nil, nil, 496, 494, nil, 494, nil, nil, 494, 496, - 496, 496, 495, 495, 496, 496, 496, nil, 496, nil, - 495, 918, 918, nil, nil, 495, 495, nil, 496, 918, - 918, 918, 918, nil, nil, nil, nil, nil, 496, 496, - nil, 496, 496, 496, 496, 496, nil, 495, nil, nil, - nil, nil, nil, 202, 202, nil, nil, 202, nil, nil, - 495, nil, 495, nil, nil, 495, 202, 202, 918, 202, - 202, 202, 202, 202, 202, 202, nil, nil, 202, 202, - 496, 496, nil, nil, 202, 202, 202, 202, 496, nil, - nil, nil, nil, 496, 496, nil, nil, nil, nil, nil, - 202, 202, nil, 202, 202, 202, 202, 202, 202, 202, - 202, 202, 202, 202, nil, 496, 202, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 496, nil, - 496, nil, nil, 496, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, nil, nil, - nil, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, nil, 7, 7, 7, nil, 7, nil, nil, - nil, nil, nil, nil, nil, nil, 7, 7, nil, 7, - 7, 7, 7, 7, 7, 7, nil, nil, 7, 7, - nil, nil, nil, nil, 7, 7, 7, 7, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 7, 7, nil, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, nil, nil, 7, 7, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 7, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, nil, nil, nil, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, nil, 8, 8, nil, - nil, 8, nil, nil, nil, nil, nil, nil, nil, nil, - 8, 8, nil, 8, 8, 8, 8, 8, 8, 8, - nil, nil, 8, 8, nil, nil, nil, nil, 8, 8, - 8, 8, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 8, 8, nil, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, nil, nil, - 8, 8, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 8, 411, 411, 411, 411, 411, 411, 411, 411, - 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, - 411, 411, 411, 411, 411, 411, nil, nil, nil, 411, - 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, - 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, - nil, 411, 411, nil, nil, 411, nil, nil, nil, nil, - nil, nil, nil, nil, 411, 411, nil, 411, 411, 411, - 411, 411, 411, 411, nil, nil, 411, 411, nil, nil, - nil, nil, 411, 411, 411, 411, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 411, 411, - nil, 411, 411, 411, 411, 411, 411, 411, 411, 411, - 411, 411, nil, nil, 411, 411, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 411, 415, 415, 415, 415, - 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, - 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, - nil, nil, nil, 415, 415, 415, 415, 415, 415, 415, - 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, - 415, 415, 415, 415, nil, 415, 415, nil, nil, 415, - nil, nil, nil, nil, nil, nil, nil, nil, 415, 415, - nil, 415, 415, 415, 415, 415, 415, 415, nil, nil, - 415, 415, nil, nil, nil, nil, 415, 415, 415, 415, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 415, 415, nil, 415, 415, 415, 415, 415, - 415, 415, 415, 415, 415, 415, nil, nil, 415, 415, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 415, - 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, - 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, - 65, 65, 65, 65, nil, nil, nil, 65, 65, 65, - 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, - 65, 65, 65, 65, 65, 65, 65, 65, nil, 65, - 65, 65, 65, 65, nil, 65, nil, nil, nil, nil, - nil, nil, 65, 65, nil, 65, 65, 65, 65, 65, - 65, 65, nil, nil, 65, 65, nil, nil, nil, nil, - 65, 65, 65, 65, nil, nil, nil, nil, nil, 65, - nil, nil, nil, nil, nil, nil, 65, 65, nil, 65, - 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, - nil, nil, 65, 79, 79, 79, 79, 79, 79, 79, - 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, - 79, 79, 79, 79, 79, 79, 79, nil, nil, nil, - 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, - 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, - 79, nil, 79, 79, 79, 79, 79, nil, 79, nil, - nil, nil, nil, nil, nil, 79, 79, nil, 79, 79, - 79, 79, 79, 79, 79, nil, nil, 79, 79, nil, - nil, nil, nil, 79, 79, 79, 79, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 79, - 79, nil, 79, 79, 79, 79, 79, 79, 79, 79, - 79, 79, 79, nil, nil, 79, 192, 192, 192, 192, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, - nil, nil, nil, 192, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, - 192, 192, 192, 192, nil, 192, 192, 192, 192, 192, - nil, 192, nil, nil, nil, nil, nil, nil, 192, 192, - nil, 192, 192, 192, 192, 192, 192, 192, nil, nil, - 192, 192, nil, nil, nil, nil, 192, 192, 192, 192, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 192, 192, nil, 192, 192, 192, 192, 192, - 192, 192, 192, 192, 192, 192, nil, nil, 192, 766, - 766, 766, 766, 766, 766, 766, 766, 766, 766, 766, - 766, 766, 766, 766, 766, 766, 766, 766, 766, 766, - 766, 766, 766, nil, nil, nil, 766, 766, 766, 766, - 766, 766, 766, 766, 766, 766, 766, 766, 766, 766, - 766, 766, 766, 766, 766, 766, 766, nil, 766, 766, - nil, nil, 766, nil, nil, nil, nil, nil, nil, nil, - nil, 766, 766, nil, 766, 766, 766, 766, 766, 766, - 766, nil, nil, 766, 766, nil, nil, nil, nil, 766, - 766, 766, 766, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 766, 766, nil, 766, 766, - 766, 766, 766, 766, 766, 766, 766, 766, 766, 201, - 201, 766, nil, 201, nil, nil, nil, nil, nil, nil, - nil, nil, 201, 201, nil, 201, 201, 201, 201, 201, - 201, 201, nil, nil, 201, 201, nil, nil, nil, nil, - 201, 201, 201, 201, nil, nil, nil, nil, nil, 201, - nil, nil, nil, nil, nil, nil, 201, 201, nil, 201, - 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, - 203, 203, 201, nil, 203, nil, nil, nil, nil, nil, - nil, nil, nil, 203, 203, nil, 203, 203, 203, 203, - 203, 203, 203, nil, nil, 203, 203, nil, nil, nil, - nil, 203, 203, 203, 203, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 203, 203, nil, - 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, - 203, 264, 264, 203, nil, 264, nil, nil, nil, nil, - nil, nil, nil, nil, 264, 264, nil, 264, 264, 264, - 264, 264, 264, 264, nil, nil, 264, 264, nil, nil, - nil, nil, 264, 264, 264, 264, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 264, 264, - nil, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 265, 265, 264, nil, 265, nil, nil, nil, - nil, nil, nil, nil, nil, 265, 265, nil, 265, 265, - 265, 265, 265, 265, 265, nil, nil, 265, 265, nil, - nil, nil, nil, 265, 265, 265, 265, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 265, - 265, nil, 265, 265, 265, 265, 265, 265, 265, 265, - 265, 265, 265, 266, 266, 265, nil, 266, nil, nil, - nil, nil, nil, nil, nil, nil, 266, 266, nil, 266, - 266, 266, 266, 266, 266, 266, nil, nil, 266, 266, - nil, nil, nil, nil, 266, 266, 266, 266, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 266, 266, nil, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 449, 449, 266, nil, 449, nil, - nil, nil, nil, nil, nil, nil, nil, 449, 449, nil, - 449, 449, 449, 449, 449, 449, 449, nil, nil, 449, - 449, nil, nil, nil, nil, 449, 449, 449, 449, nil, - nil, nil, nil, nil, 449, nil, nil, nil, nil, nil, - nil, 449, 449, nil, 449, 449, 449, 449, 449, 449, - 449, 449, 449, 449, 449, 450, 450, 449, nil, 450, - nil, nil, nil, nil, nil, nil, nil, nil, 450, 450, - nil, 450, 450, 450, 450, 450, 450, 450, nil, nil, - 450, 450, nil, nil, nil, nil, 450, 450, 450, 450, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 450, 450, nil, 450, 450, 450, 450, 450, - 450, 450, 450, 450, 450, 450, 521, 521, 450, nil, - 521, nil, nil, nil, nil, nil, nil, nil, nil, 521, - 521, nil, 521, 521, 521, 521, 521, 521, 521, nil, - nil, 521, 521, nil, nil, nil, nil, 521, 521, 521, - 521, nil, nil, nil, nil, nil, 521, nil, nil, nil, - nil, nil, nil, 521, 521, nil, 521, 521, 521, 521, - 521, 521, 521, 521, 521, 521, 521, 522, 522, 521, - nil, 522, nil, nil, nil, nil, nil, nil, nil, nil, - 522, 522, nil, 522, 522, 522, 522, 522, 522, 522, - nil, nil, 522, 522, nil, nil, nil, nil, 522, 522, - 522, 522, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 522, 522, nil, 522, 522, 522, - 522, 522, 522, 522, 522, 522, 522, 522, 524, 524, - 522, nil, 524, nil, nil, nil, nil, nil, nil, nil, - nil, 524, 524, nil, 524, 524, 524, 524, 524, 524, - 524, nil, nil, 524, 524, nil, nil, nil, nil, 524, - 524, 524, 524, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 524, 524, nil, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 534, - 534, 524, nil, 534, nil, nil, nil, nil, nil, nil, - nil, nil, 534, 534, nil, 534, 534, 534, 534, 534, - 534, 534, nil, nil, 534, 534, nil, nil, nil, nil, - 534, 534, 534, 534, nil, nil, nil, nil, nil, 534, - nil, nil, nil, nil, nil, nil, 534, 534, nil, 534, - 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, - 535, 535, 534, nil, 535, nil, nil, nil, nil, nil, - nil, nil, nil, 535, 535, nil, 535, 535, 535, 535, - 535, 535, 535, nil, nil, 535, 535, nil, nil, nil, - nil, 535, 535, 535, 535, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 535, 535, nil, - 535, 535, 535, 535, 535, 535, 535, 535, 535, 535, - 535, 584, 584, 535, nil, 584, nil, nil, nil, nil, - nil, nil, nil, nil, 584, 584, nil, 584, 584, 584, - 584, 584, 584, 584, nil, nil, 584, 584, nil, nil, - nil, nil, 584, 584, 584, 584, nil, nil, nil, nil, - nil, 584, nil, nil, nil, nil, nil, nil, 584, 584, - nil, 584, 584, 584, 584, 584, 584, 584, 584, 584, - 584, 584, 585, 585, 584, nil, 585, nil, nil, nil, - nil, nil, nil, nil, nil, 585, 585, nil, 585, 585, - 585, 585, 585, 585, 585, nil, nil, 585, 585, nil, - nil, nil, nil, 585, 585, 585, 585, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 585, - 585, nil, 585, 585, 585, 585, 585, 585, 585, 585, - 585, 585, 585, 591, 591, 585, nil, 591, nil, nil, - nil, nil, nil, nil, nil, nil, 591, 591, nil, 591, - 591, 591, 591, 591, 591, 591, nil, nil, 591, 591, - nil, nil, nil, nil, 591, 591, 591, 591, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 591, 591, nil, 591, 591, 591, 591, 591, 591, 591, - 591, 591, 591, 591, 593, 593, 591, nil, 593, nil, - nil, nil, nil, nil, nil, nil, nil, 593, 593, nil, - 593, 593, 593, 593, 593, 593, 593, nil, nil, 593, - 593, nil, nil, nil, nil, 593, 593, 593, 593, nil, - nil, nil, nil, nil, 593, nil, nil, nil, nil, nil, - nil, 593, 593, nil, 593, 593, 593, 593, 593, 593, - 593, 593, 593, 593, 593, 822, 822, 593, nil, 822, - nil, nil, nil, nil, nil, nil, nil, nil, 822, 822, - nil, 822, 822, 822, 822, 822, 822, 822, nil, nil, - 822, 822, nil, nil, nil, nil, 822, 822, 822, 822, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 822, 822, nil, 822, 822, 822, 822, 822, - 822, 822, 822, 822, 822, 822, 946, 946, 822, nil, - 946, nil, nil, nil, nil, nil, nil, nil, nil, 946, - 946, nil, 946, 946, 946, 946, 946, 946, 946, nil, - nil, 946, 946, nil, nil, nil, nil, 946, 946, 946, - 946, nil, nil, nil, nil, nil, 946, nil, nil, nil, - nil, nil, nil, 946, 946, nil, 946, 946, 946, 946, - 946, 946, 946, 946, 946, 946, 946, 947, 947, 946, - nil, 947, nil, nil, nil, nil, nil, nil, nil, nil, - 947, 947, nil, 947, 947, 947, 947, 947, 947, 947, - nil, nil, 947, 947, nil, nil, nil, nil, 947, 947, - 947, 947, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 947, 947, nil, 947, 947, 947, - 947, 947, 947, 947, 947, 947, 947, 947, nil, nil, - 947 ] - -racc_action_pointer = [ - -2, 34, nil, 234, nil, 618, -19, 22922, 23046, -5, - -1, 15, 117, 414, 291, 243, nil, 125, 252, 900, - 186, nil, 379, 506, 633, 381, 13, 760, 22407, nil, - 900, 1027, 1154, nil, 108, 541, 237, 261, 1294, 1421, - 1548, 176, 467, nil, nil, nil, nil, nil, nil, nil, - 22537, nil, 1675, 1802, 1929, 29, 9932, 2056, 2183, nil, - nil, 2310, 2450, 2577, nil, 23418, nil, nil, nil, nil, - nil, -102, nil, nil, nil, nil, nil, 178, 220, 23531, - nil, nil, nil, 429, 2704, nil, nil, 2831, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 359, nil, 2971, - nil, nil, nil, 3111, 3238, 3365, 3492, 3632, 3772, nil, - 663, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 23644, 234, nil, 3912, 4039, 4166, 4293, 4420, - 4547, 23818, 22792, 23879, 4674, 4801, 4928, nil, 541, -49, - 319, 61, 240, 328, 5068, 5195, nil, nil, 5322, 363, - 5449, 5576, 5703, 5830, 5957, 6084, 6211, 6338, 6465, 6592, - 6719, 6846, 6973, 7100, 7227, 7354, 7481, 7608, 7735, 7862, - 7989, 8116, 8243, 8370, 8497, 8624, nil, nil, nil, 1294, - nil, 329, 339, nil, 8751, 389, 8878, nil, nil, nil, - nil, 9005, nil, nil, 23940, 24001, 24062, 383, 9132, 9259, - nil, nil, nil, nil, nil, nil, nil, 9386, 249, 745, - 390, 9526, 409, 438, 405, 9653, 9793, 73, 594, 497, - 196, 465, 440, 207, nil, 478, 471, nil, 9920, nil, - 586, 505, 531, 633, nil, 533, nil, 10047, nil, 10187, - 35, nil, 502, -103, 135, 537, 521, 262, 556, nil, - nil, -22, 10580, nil, nil, nil, 520, 545, nil, 564, - 567, nil, nil, nil, nil, nil, nil, nil, 3097, nil, - nil, nil, 648, nil, nil, 674, 806, -7, 36, 10314, - 10441, 324, 63, 596, -17, 668, 690, 37, 731, nil, - nil, 506, 704, nil, 721, nil, 65, nil, nil, 10568, - -12, 122, 360, 384, 385, 436, 509, 590, nil, 795, - nil, 10695, nil, 173, nil, 326, nil, -23, 649, 362, - nil, 653, -50, nil, 365, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 683, 23170, nil, nil, nil, 23294, 688, nil, nil, 760, - nil, 10822, 681, nil, 691, nil, nil, 1421, 728, 731, - 668, 761, 10949, nil, nil, nil, 21929, 757, 22011, nil, - 11076, 11203, 11330, nil, nil, nil, 1548, nil, nil, 24123, - 24184, 11457, 11584, 180, 11711, 11838, 11965, 115, nil, 3238, - 3365, 232, 879, 785, 787, 821, 824, 2457, 2584, 5068, - 3492, 3632, 3772, 3912, 4039, 4166, 4293, 4420, 4547, 4674, - 1133, 1232, 4801, 4928, 633, -34, nil, 12092, nil, 12219, - nil, 12346, nil, nil, 22667, 22724, 22792, -17, nil, 771, - nil, nil, 785, 787, nil, nil, 12473, 59, 203, 832, - nil, nil, 12613, 833, 797, nil, nil, 799, 12753, 845, - 12880, 24245, 24306, 13007, 24367, 223, 848, nil, nil, 821, - nil, 13134, 13261, 13388, 24428, 24489, 1675, 13515, 949, 951, - 871, nil, nil, 13642, nil, nil, 13769, nil, nil, nil, - nil, 13909, 14049, 874, nil, 1000, nil, nil, 14176, 12765, - nil, 772, nil, nil, 894, nil, 3126, nil, 859, 1198, - nil, nil, 14316, 977, nil, nil, 14456, 212, 227, 975, - 983, 14596, nil, 14723, 24550, 24611, 14850, 40, nil, 760, - nil, 24672, 14977, 24733, nil, nil, 15104, 387, 15231, nil, - 1166, nil, nil, nil, 45, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, -35, nil, nil, nil, 864, - nil, nil, nil, nil, nil, 15358, 866, 15485, 798, 203, - 15612, 15739, 900, nil, nil, nil, 15866, 903, nil, 15993, - 915, nil, 268, 307, 22143, 22275, 927, 928, 506, nil, - 16120, nil, 1040, nil, 16260, 897, nil, 939, 16387, nil, - nil, nil, nil, nil, nil, nil, nil, 16527, nil, 942, - 16654, 16781, 2310, 907, nil, nil, 947, 16921, 17061, nil, - 1154, -27, 17188, 914, nil, 957, 228, 235, 962, 313, - 327, 963, 960, 972, 17315, 1802, 997, 1001, 240, 1056, - 17442, nil, nil, 376, 960, 1068, nil, nil, 945, nil, - 958, 935, 1035, 963, 967, nil, nil, 1010, 3135, nil, - 869, nil, 1096, nil, nil, nil, nil, nil, 1102, nil, - 1103, 17569, 1020, 46, 52, 59, 102, 1021, 17696, 1027, - nil, 1028, 1026, 17836, 416, nil, -25, 17976, 18116, 9665, - 463, nil, nil, 1075, nil, 18243, nil, 998, 999, nil, - 1000, 1002, 1004, nil, 996, nil, 23757, 1043, 1050, 18383, - nil, nil, nil, 1929, 1007, 18510, 18637, 18764, nil, 2056, - nil, 2183, nil, nil, 2446, nil, 2573, nil, 18891, 19018, - 19145, 315, 319, 2704, nil, 1041, 1144, nil, nil, 1041, - nil, 1026, 19272, nil, 1053, 1161, 1072, 323, nil, nil, - nil, 1196, nil, 19412, 1081, 1125, nil, nil, nil, nil, - nil, nil, 24794, nil, 1127, nil, nil, nil, nil, 1407, - 1215, nil, 19539, 1220, 19679, 19819, nil, nil, 66, 56, - 988, 295, nil, 1221, nil, nil, 1222, 1225, 1109, nil, - nil, nil, -32, nil, nil, 807, 14188, nil, 842, nil, - 406, nil, 19946, nil, nil, nil, nil, nil, nil, nil, - 1127, 1113, nil, 2831, nil, 2971, 20073, 20200, nil, nil, - nil, 20327, 1114, nil, nil, nil, 20467, nil, nil, 72, - 20594, nil, 1154, 1125, nil, nil, 78, nil, 1249, 1250, - 20721, 20861, nil, nil, 21001, nil, nil, 1168, nil, 1132, - nil, nil, 1133, 1134, 1139, 1137, nil, nil, 22721, nil, - nil, 21128, nil, 21268, 91, 1112, 1221, 97, nil, nil, - 21408, nil, nil, nil, 460, 21548, 1268, nil, nil, 1081, - nil, nil, nil, 21688, 1273, 21815, 24855, 24916, 98, 899, - nil, nil, nil, 1272, nil, 1153, 1275, nil, 1190, 108, - 120, 198, 202, nil, nil, nil, nil, 218 ] - -racc_action_default = [ - -3, -555, -1, -543, -4, -6, -555, -555, -555, -555, - -555, -555, -555, -555, -277, -37, -38, -555, -555, -43, - -45, -46, -289, -327, -328, -50, -255, -382, -255, -65, - -10, -69, -76, -78, -555, -457, -555, -555, -555, -555, - -555, -545, -232, -270, -271, -272, -273, -274, -275, -276, - -533, -279, -555, -554, -525, -297, -554, -555, -555, -302, - -305, -543, -555, -555, -319, -555, -329, -330, -400, -401, - -402, -403, -404, -554, -407, -554, -554, -554, -554, -554, - -434, -440, -441, -555, -446, -447, -448, -449, -450, -451, - -452, -453, -454, -455, -456, -459, -460, -555, -2, -544, - -550, -551, -552, -555, -555, -555, -555, -555, -3, -13, - -555, -105, -106, -107, -108, -109, -110, -111, -114, -115, - -116, -117, -118, -119, -120, -121, -122, -123, -124, -125, - -126, -127, -128, -129, -130, -131, -132, -133, -134, -135, - -136, -137, -138, -139, -140, -141, -142, -143, -144, -145, - -146, -147, -148, -149, -150, -151, -152, -153, -154, -155, - -156, -157, -158, -159, -160, -161, -162, -163, -164, -165, - -166, -167, -168, -169, -170, -171, -172, -173, -174, -175, - -176, -177, -178, -179, -180, -181, -182, -183, -184, -185, - -186, -187, -555, -18, -112, -10, -555, -555, -555, -554, - -554, -555, -555, -555, -555, -555, -555, -41, -555, -457, - -555, -277, -555, -555, -10, -555, -42, -224, -555, -555, - -555, -555, -555, -555, -555, -555, -555, -555, -555, -555, - -555, -555, -555, -555, -555, -555, -555, -555, -555, -555, - -555, -555, -555, -555, -555, -555, -369, -371, -47, -233, - -248, -262, -262, -252, -555, -263, -555, -289, -327, -328, - -527, -555, -48, -49, -555, -555, -555, -55, -554, -555, - -296, -375, -383, -385, -63, -381, -64, -555, -543, -11, - -65, -10, -555, -555, -70, -73, -10, -457, -555, -555, - -277, -292, -545, -555, -331, -382, -555, -75, -555, -80, - -284, -442, -443, -555, -209, -210, -225, -555, -546, -10, - -545, -234, -545, -547, -547, -555, -555, -547, -555, -298, - -299, -555, -555, -342, -343, -350, -554, -491, -357, -554, - -554, -368, -490, -492, -493, -494, -495, -496, -555, -509, - -514, -515, -517, -518, -519, -555, -44, -555, -555, -555, - -555, -543, -555, -544, -457, -555, -555, -277, -555, -498, - -499, -101, -555, -103, -555, -277, -555, -316, -457, -555, - -105, -106, -143, -144, -160, -165, -172, -175, -322, -555, - -523, -555, -405, -555, -420, -555, -422, -555, -555, -555, - -412, -555, -555, -418, -555, -433, -435, -436, -437, -438, - -444, -445, 968, -5, -553, -19, -20, -21, -22, -23, - -555, -555, -15, -16, -17, -555, -555, -25, -34, -188, - -263, -555, -555, -26, -35, -36, -27, -190, -555, -555, - -534, -535, -554, -378, -536, -537, -534, -255, -535, -380, - -539, -540, -554, -534, -535, -33, -198, -39, -40, -555, - -555, -554, -554, -284, -555, -555, -555, -555, -295, -199, - -200, -201, -202, -203, -204, -205, -206, -211, -212, -213, - -214, -215, -216, -217, -218, -219, -220, -221, -222, -223, - -226, -227, -228, -229, -555, -554, -249, -555, -250, -555, - -260, -555, -264, -530, -255, -255, -255, -554, -56, -545, - -243, -244, -262, -262, -256, -257, -555, -554, -554, -555, - -291, -9, -544, -555, -66, -282, -81, -71, -555, -555, - -554, -555, -555, -554, -555, -284, -555, -442, -443, -77, - -82, -555, -555, -555, -555, -555, -230, -555, -392, -555, - -555, -235, -236, -549, -548, -238, -549, -287, -288, -526, - -339, -10, -10, -555, -341, -555, -359, -366, -555, -363, - -364, -555, -367, -491, -555, -500, -555, -502, -504, -508, - -516, -520, -10, -332, -333, -334, -10, -555, -555, -555, - -555, -10, -387, -554, -555, -555, -554, -284, -311, -101, - -102, -555, -554, -555, -314, -461, -555, -555, -555, -320, - -489, -324, -541, -542, -545, -406, -421, -424, -425, -427, - -408, -423, -409, -410, -411, -555, -414, -416, -417, -555, - -439, -7, -14, -113, -24, -555, -269, -555, -285, -286, - -555, -555, -59, -241, -242, -376, -555, -61, -379, -555, - -57, -377, -534, -535, -534, -535, -555, -555, -188, -294, - -555, -353, -555, -355, -10, -262, -261, -265, -555, -528, - -529, -51, -372, -52, -373, -53, -374, -10, -239, -555, - -245, -247, -43, -555, -254, -258, -555, -10, -10, -290, - -12, -66, -555, -74, -79, -555, -534, -535, -554, -538, - -283, -555, -555, -554, -555, -197, -207, -208, -555, -554, - -554, -280, -281, -547, -555, -555, -340, -351, -555, -358, - -554, -352, -555, -554, -554, -510, -497, -555, -555, -507, - -554, -335, -554, -303, -336, -337, -338, -306, -555, -309, - -555, -555, -555, -534, -535, -538, -283, -555, -555, -101, - -104, -538, -555, -10, -555, -463, -555, -10, -10, -489, - -555, -466, -467, -469, -470, -472, -473, -522, -522, -478, - -480, -480, -480, -488, -491, -512, -555, -555, -555, -10, - -413, -415, -419, -189, -267, -555, -555, -555, -30, -193, - -31, -194, -60, -32, -195, -62, -196, -58, -555, -555, - -555, -286, -285, -231, -354, -555, -555, -251, -266, -555, - -240, -262, -555, -259, -555, -555, -72, -285, -286, -83, - -293, -554, -348, -10, -393, -554, -394, -395, -237, -344, - -345, -365, -555, -284, -555, -361, -362, -501, -503, -506, - -555, -346, -555, -555, -10, -10, -308, -310, -555, -285, - -93, -555, -285, -555, -462, -317, -555, -555, -545, -465, - -468, -471, -555, -476, -477, -555, -555, -484, -555, -486, - -555, -487, -555, -325, -524, -426, -429, -430, -431, -432, - -555, -268, -28, -191, -29, -192, -555, -555, -356, -370, - -54, -246, -262, -384, -386, -8, -10, -399, -349, -555, - -555, -397, -283, -554, -505, -300, -555, -301, -555, -555, - -555, -10, -312, -315, -10, -321, -323, -555, -474, -522, - -521, -479, -480, -480, -480, -555, -513, -511, -489, -428, - -253, -555, -398, -10, -457, -555, -555, -277, -396, -360, - -10, -304, -307, -265, -554, -10, -555, -464, -475, -555, - -482, -483, -485, -10, -392, -554, -555, -555, -284, -554, - -388, -389, -390, -555, -318, -480, -555, -391, -555, -534, - -535, -538, -283, -347, -313, -481, -326, -285 ] - -racc_goto_table = [ - 13, 315, 307, 699, 323, 378, 498, 114, 114, 539, - 250, 250, 250, 432, 437, 442, 5, 208, 208, 396, - 284, 488, 208, 208, 208, 659, 331, 102, 294, 294, - 13, 288, 288, 572, 576, 529, 10, 98, 12, 557, - 748, 312, 560, 562, 251, 251, 251, 366, 565, 109, - 194, 580, 208, 208, 117, 117, 216, 208, 208, 294, - 294, 208, 355, 364, 99, 114, 10, 715, 12, 418, - 425, 760, 707, 267, 274, 276, 494, 495, 496, 114, - 542, 545, 659, 2, 549, 102, 280, 297, 252, 252, - 252, 606, 763, 723, 727, 352, 759, 616, 359, 13, - 1, 916, 590, 208, 208, 208, 208, 13, 13, 347, - 348, 403, 282, 351, 641, 5, 564, 710, 385, 387, - 317, 714, 394, 409, 5, 885, 830, 248, 262, 263, - 193, 360, 396, 411, 499, 10, 668, 12, 676, 504, - 207, 654, 811, 10, 10, 12, 12, 428, 429, 853, - 854, 380, 316, 667, 319, 405, 406, 407, 408, 320, - 358, 594, 762, 677, 678, 833, 662, 664, 666, 379, - 601, 309, 349, 834, 350, 310, 835, 738, 935, 743, - 346, 346, 916, 598, 346, 904, 369, 312, 312, 747, - 600, 410, 114, 766, 918, 13, 208, 208, 208, 208, - 208, 321, 441, 550, 208, 208, 208, 659, 713, 247, - 485, 656, 507, 656, 13, 208, 508, 950, 422, 422, - 760, 731, 815, 889, 382, 383, 346, 346, 346, 346, - 674, 10, 389, 12, 417, 423, 426, 615, 392, 865, - 768, 763, 445, 769, 848, 759, 909, 908, 912, 828, - 10, nil, 12, 526, nil, 683, 250, 250, nil, nil, - nil, 432, 437, nil, nil, 250, nil, nil, 208, 208, - 553, 540, 488, 541, nil, nil, 565, 208, 728, 719, - nil, 13, 294, nil, nil, 288, 13, 530, nil, nil, - 502, 251, 331, nil, nil, 294, nil, nil, 288, 251, - nil, 938, 102, nil, nil, nil, nil, nil, nil, 13, - nil, 762, 511, nil, nil, nil, nil, 10, nil, 12, - nil, nil, 10, 771, 12, nil, 271, 275, 447, 448, - 14, 740, nil, 688, 503, 252, 693, 280, 457, 512, - 517, 707, 280, 252, 717, 10, 688, 12, 910, 208, - 208, 910, 759, 599, 759, 963, 759, 902, 943, nil, - 14, 290, 290, 513, 715, 641, 294, nil, 519, 364, - nil, 782, nil, 501, 505, 102, 785, 951, nil, 787, - nil, 208, 509, nil, nil, 579, 893, nil, nil, 760, - 595, nil, 357, 365, 656, 656, 688, nil, nil, 646, - 647, 577, 578, nil, nil, 688, nil, nil, nil, 957, - 763, 114, nil, nil, 759, 114, nil, 659, 913, 806, - 914, nil, nil, 821, 797, nil, 825, 826, 565, 14, - nil, nil, nil, nil, nil, 759, nil, 14, 14, 312, - 312, nil, nil, 843, nil, nil, nil, 846, 847, nil, - 441, 208, 208, 622, nil, nil, nil, 623, 117, nil, - 669, nil, 117, nil, nil, nil, nil, nil, 685, nil, - 818, 692, 346, 346, nil, nil, nil, nil, nil, 632, - 762, nil, nil, nil, 637, nil, nil, nil, nil, 640, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 955, nil, nil, 604, nil, 208, 530, 312, nil, - nil, 312, 13, nil, nil, 294, nil, nil, 288, nil, - 208, nil, 441, 208, 901, 14, nil, nil, 680, nil, - nil, 732, nil, nil, 737, 441, nil, 208, nil, 894, - 742, 661, 663, 665, 14, nil, nil, nil, 10, nil, - 12, 13, 13, 655, nil, 294, nil, nil, 711, nil, - nil, nil, nil, nil, nil, 767, nil, nil, nil, nil, - 797, 312, 13, 816, 312, 923, 13, 857, 859, 861, - 312, 13, 930, 208, nil, 441, 208, 10, 10, 12, - 12, 441, 208, 271, 35, 275, 208, nil, 208, nil, - 795, 724, 724, nil, 936, 656, 929, nil, 10, 703, - 12, 14, 10, nil, 12, 290, 14, 10, nil, 12, - nil, 745, 331, nil, 35, 287, 287, nil, 290, 310, - 208, 208, nil, 952, nil, nil, 208, nil, nil, 14, - nil, nil, nil, 956, nil, 656, nil, nil, 744, nil, - nil, 920, nil, nil, 13, nil, 354, 368, nil, 368, - 698, nil, 283, nil, nil, nil, nil, 13, 778, 780, - nil, 530, nil, nil, 783, nil, nil, 13, 13, 294, - nil, nil, 288, 809, nil, nil, nil, nil, nil, nil, - 10, 294, 12, 35, 288, nil, nil, nil, nil, 365, - nil, 35, 35, 10, nil, 12, 863, nil, nil, nil, - nil, nil, nil, 10, 10, 12, 12, nil, nil, 346, - nil, 746, 422, nil, nil, nil, nil, nil, nil, 940, - 941, 942, 634, nil, nil, nil, 801, 638, 208, nil, - nil, nil, 634, 13, nil, nil, nil, 13, 13, nil, - nil, nil, nil, 838, nil, nil, nil, nil, 688, nil, - nil, nil, nil, nil, nil, nil, 114, nil, 844, 13, - 845, nil, 965, nil, 849, nil, 208, 208, nil, 10, - nil, 12, nil, 10, 10, 12, 12, nil, nil, 35, - 841, nil, nil, nil, 634, 634, 634, nil, nil, nil, - nil, nil, nil, nil, nil, 10, nil, 12, 35, 907, - nil, nil, nil, 13, 872, 874, nil, nil, nil, nil, - nil, nil, 441, nil, 882, nil, nil, 416, nil, nil, - nil, nil, 208, 318, 13, 13, nil, nil, nil, nil, - nil, nil, 14, nil, nil, nil, 283, nil, 290, 10, - nil, 12, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 346, nil, nil, nil, 724, nil, nil, nil, nil, - 10, 10, 12, 12, nil, 35, nil, nil, nil, 287, - 35, 14, 14, nil, 896, nil, 13, 294, 365, nil, - 925, nil, 287, 958, nil, nil, nil, nil, nil, nil, - nil, 13, 14, 35, 13, nil, 14, nil, nil, nil, - nil, 14, nil, 283, nil, nil, nil, nil, 283, nil, - nil, nil, 10, 13, 12, nil, 928, nil, nil, nil, - 13, nil, nil, 312, nil, 13, nil, 10, nil, 12, - 10, nil, 12, 13, nil, 208, nil, 441, nil, nil, - nil, nil, nil, nil, nil, 346, nil, nil, nil, 10, - nil, 12, nil, 368, nil, nil, 10, nil, 12, nil, - nil, 10, nil, 12, nil, 420, 424, nil, nil, 10, - nil, 12, nil, nil, 14, nil, nil, nil, 634, nil, - nil, 638, nil, 634, nil, nil, nil, 14, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 14, 14, nil, - nil, nil, 290, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 290, nil, nil, nil, nil, nil, - nil, nil, nil, 490, nil, 492, nil, nil, nil, nil, - 493, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 324, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 14, nil, nil, nil, 14, 14, 384, - nil, 386, 386, 390, 393, 386, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 869, 14, - nil, nil, nil, nil, nil, nil, 35, nil, nil, nil, - nil, nil, 287, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 14, nil, 35, 35, nil, nil, nil, - nil, nil, 368, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 14, 14, 35, 217, nil, nil, - 35, 249, 249, 249, nil, 35, nil, nil, nil, nil, - nil, nil, nil, 704, 705, nil, nil, 304, 305, 306, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 626, nil, 249, 249, 720, nil, nil, nil, 722, nil, - nil, nil, nil, 730, nil, nil, 14, nil, nil, nil, - 927, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 14, nil, nil, 14, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 35, nil, - nil, nil, nil, 14, nil, nil, nil, nil, nil, nil, - 14, 35, nil, nil, nil, 14, 657, nil, 318, nil, - 660, 35, 35, 14, 500, nil, 287, nil, nil, nil, - nil, nil, nil, nil, nil, 673, 796, nil, 287, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 799, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 804, - 805, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 657, nil, nil, 318, nil, nil, nil, nil, - nil, nil, 556, nil, nil, 556, 556, 35, nil, nil, - nil, 35, 35, nil, nil, 419, 249, 427, 249, 249, - nil, nil, nil, 446, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 35, nil, nil, nil, 217, nil, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 482, 483, 484, nil, nil, nil, nil, nil, - nil, 870, nil, 249, nil, 249, 774, 35, nil, nil, - 249, nil, nil, nil, nil, nil, nil, 249, 249, nil, - nil, nil, nil, nil, nil, nil, 249, nil, 35, 35, - nil, nil, nil, nil, nil, nil, nil, 798, 633, nil, - nil, nil, nil, nil, nil, 888, nil, nil, 633, 657, - 318, nil, nil, nil, nil, nil, 536, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 898, 899, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 814, - 35, nil, nil, nil, 924, nil, nil, nil, nil, nil, - nil, 651, nil, nil, nil, 35, nil, nil, 35, nil, - 633, 633, 633, 651, nil, nil, nil, nil, nil, nil, - 420, nil, nil, 651, 651, nil, nil, 35, 922, nil, - nil, nil, nil, nil, 35, nil, nil, nil, nil, 35, - nil, nil, nil, 934, 851, nil, nil, 35, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 871, 944, nil, nil, nil, nil, - nil, nil, 949, nil, nil, nil, nil, 953, nil, nil, - 249, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 420, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 249, 249, nil, 446, 648, 427, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 249, nil, 249, nil, - 249, 917, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 672, nil, nil, nil, nil, - 318, nil, nil, nil, nil, nil, nil, nil, nil, 249, - nil, nil, 249, nil, nil, nil, nil, nil, nil, 933, - 695, 696, 697, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 249, nil, 633, 249, nil, nil, nil, 633, - 933, nil, nil, nil, nil, 812, 817, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 556, nil, nil, 556, - 556, nil, nil, nil, nil, nil, 812, nil, 812, nil, - nil, nil, 249, nil, nil, 249, nil, nil, nil, nil, - nil, 249, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 773, nil, 249, nil, nil, 779, - 781, nil, nil, 293, 293, 784, nil, nil, 786, nil, - 293, 293, 293, nil, nil, nil, nil, nil, nil, 793, - nil, nil, nil, nil, nil, nil, 293, 249, nil, nil, - nil, nil, nil, nil, 293, 293, nil, 887, nil, 249, - 249, 891, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 249, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 249, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 556, - nil, nil, nil, nil, 249, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 249, 873, 875, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 779, 781, 784, - 812, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 249, nil, nil, nil, 812, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 293, nil, 293, 293, 293, 293, 293, 293, 293, 293, - 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, - 293, 293, 293, 293, 293, 293, 293, 293, nil, nil, - nil, nil, nil, nil, nil, nil, 293, nil, 293, nil, - nil, 249, nil, 293, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 875, 873, nil, nil, nil, - 249, nil, nil, nil, nil, nil, nil, 293, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 249, - 293, nil, nil, nil, nil, nil, nil, nil, nil, 293, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 249, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 249, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 293, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 293, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 293, 293, 293, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 293, - nil, 293, nil, 293, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 293, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 293, 293, 293, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 293, nil, nil, 293, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 293, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 293, nil, 293, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 293, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 293, nil, nil, nil, nil, nil, nil, nil, - 293, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 293, 293, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 293, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 293, nil, nil, nil, - nil, nil, 293, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 293, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 293, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 293, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 293, 293, 293, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 293, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 293, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 293, 293, - nil, nil, nil, 293, nil, nil, nil, nil, nil, nil, - nil, nil, 293, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 293, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 293 ] - -racc_goto_check = [ - 21, 22, 51, 10, 104, 47, 35, 48, 48, 8, - 29, 29, 29, 33, 33, 33, 7, 21, 21, 47, - 41, 61, 21, 21, 21, 154, 107, 83, 52, 52, - 21, 21, 21, 77, 77, 43, 17, 4, 20, 109, - 84, 29, 109, 109, 54, 54, 54, 46, 145, 14, - 14, 80, 21, 21, 50, 50, 18, 21, 21, 52, - 52, 21, 21, 21, 6, 48, 17, 147, 20, 24, - 24, 110, 106, 34, 34, 34, 33, 33, 33, 48, - 55, 55, 154, 2, 55, 83, 38, 42, 56, 56, - 56, 129, 141, 79, 79, 4, 108, 129, 17, 21, - 1, 151, 45, 21, 21, 21, 21, 21, 21, 16, - 16, 5, 39, 16, 60, 7, 148, 111, 126, 126, - 56, 111, 126, 7, 7, 12, 78, 31, 31, 31, - 15, 19, 47, 27, 58, 17, 59, 20, 63, 64, - 26, 36, 11, 17, 17, 20, 20, 22, 22, 142, - 142, 72, 73, 36, 74, 16, 16, 16, 16, 76, - 81, 82, 111, 36, 36, 11, 60, 60, 60, 85, - 86, 87, 88, 89, 90, 26, 91, 92, 93, 94, - 26, 26, 151, 95, 26, 96, 97, 29, 29, 98, - 99, 2, 48, 100, 101, 21, 21, 21, 21, 21, - 21, 102, 48, 103, 21, 21, 21, 154, 105, 112, - 113, 62, 115, 62, 21, 21, 116, 117, 54, 54, - 110, 118, 119, 120, 124, 125, 26, 26, 26, 26, - 62, 17, 127, 20, 18, 18, 18, 128, 130, 131, - 132, 141, 18, 133, 135, 108, 137, 139, 144, 149, - 17, nil, 20, 51, nil, 43, 29, 29, nil, nil, - nil, 33, 33, nil, nil, 29, nil, nil, 21, 21, - 104, 51, 61, 51, nil, nil, 145, 21, 80, 145, - nil, 21, 52, nil, nil, 21, 21, 41, nil, nil, - 54, 54, 107, nil, nil, 52, nil, nil, 21, 54, - nil, 142, 83, nil, nil, nil, nil, nil, nil, 21, - nil, 111, 4, nil, nil, nil, nil, 17, nil, 20, - nil, nil, 17, 129, 20, nil, 57, 57, 26, 26, - 23, 45, nil, 33, 56, 56, 33, 38, 26, 6, - 42, 106, 38, 56, 148, 17, 33, 20, 108, 21, - 21, 108, 108, 46, 108, 78, 108, 79, 84, nil, - 23, 23, 23, 39, 147, 60, 52, nil, 39, 21, - nil, 35, nil, 31, 31, 83, 35, 11, nil, 35, - nil, 21, 31, nil, nil, 4, 111, nil, nil, 110, - 83, nil, 23, 23, 62, 62, 33, nil, nil, 22, - 22, 16, 16, nil, nil, 33, nil, nil, nil, 10, - 141, 48, nil, nil, 108, 48, nil, 154, 111, 43, - 111, nil, nil, 109, 61, nil, 109, 109, 145, 23, - nil, nil, nil, nil, nil, 108, nil, 23, 23, 29, - 29, nil, nil, 8, nil, nil, nil, 8, 8, nil, - 48, 21, 21, 14, nil, nil, nil, 14, 50, nil, - 51, nil, 50, nil, nil, nil, nil, nil, 22, nil, - 55, 22, 26, 26, nil, nil, nil, nil, nil, 34, - 111, nil, nil, nil, 34, nil, nil, nil, nil, 34, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 111, nil, nil, 26, nil, 21, 41, 29, nil, - nil, 29, 21, nil, nil, 52, nil, nil, 21, nil, - 21, nil, 48, 21, 77, 23, nil, nil, 7, nil, - nil, 22, nil, nil, 22, 48, nil, 21, nil, 145, - 22, 34, 34, 34, 23, nil, nil, nil, 17, nil, - 20, 21, 21, 56, nil, 52, nil, nil, 21, nil, - nil, nil, nil, nil, nil, 51, nil, nil, nil, nil, - 61, 29, 21, 24, 29, 77, 21, 143, 143, 143, - 29, 21, 77, 21, nil, 48, 21, 17, 17, 20, - 20, 48, 21, 57, 44, 57, 21, nil, 21, nil, - 104, 83, 83, nil, 8, 62, 109, nil, 17, 56, - 20, 23, 17, nil, 20, 23, 23, 17, nil, 20, - nil, 83, 107, nil, 44, 44, 44, nil, 23, 26, - 21, 21, nil, 80, nil, nil, 21, nil, nil, 23, - nil, nil, nil, 8, nil, 62, nil, nil, 16, nil, - nil, 61, nil, nil, 21, nil, 44, 44, nil, 44, - 26, nil, 9, nil, nil, nil, nil, 21, 18, 18, - nil, 41, nil, nil, 18, nil, nil, 21, 21, 52, - nil, nil, 21, 41, nil, nil, nil, nil, nil, nil, - 17, 52, 20, 44, 21, nil, nil, nil, nil, 23, - nil, 44, 44, 17, nil, 20, 47, nil, nil, nil, - nil, nil, nil, 17, 17, 20, 20, nil, nil, 26, - nil, 26, 54, nil, nil, nil, nil, nil, nil, 143, - 143, 143, 57, nil, nil, nil, 56, 57, 21, nil, - nil, nil, 57, 21, nil, nil, nil, 21, 21, nil, - nil, nil, nil, 54, nil, nil, nil, nil, 33, nil, - nil, nil, nil, nil, nil, nil, 48, nil, 83, 21, - 83, nil, 143, nil, 83, nil, 21, 21, nil, 17, - nil, 20, nil, 17, 17, 20, 20, nil, nil, 44, - 16, nil, nil, nil, 57, 57, 57, nil, nil, nil, - nil, nil, nil, nil, nil, 17, nil, 20, 44, 51, - nil, nil, nil, 21, 18, 18, nil, nil, nil, nil, - nil, nil, 48, nil, 54, nil, nil, 9, nil, nil, - nil, nil, 21, 25, 21, 21, nil, nil, nil, nil, - nil, nil, 23, nil, nil, nil, 9, nil, 23, 17, - nil, 20, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 26, nil, nil, nil, 83, nil, nil, nil, nil, - 17, 17, 20, 20, nil, 44, nil, nil, nil, 44, - 44, 23, 23, nil, 16, nil, 21, 52, 23, nil, - 21, nil, 44, 22, nil, nil, nil, nil, nil, nil, - nil, 21, 23, 44, 21, nil, 23, nil, nil, nil, - nil, 23, nil, 9, nil, nil, nil, nil, 9, nil, - nil, nil, 17, 21, 20, nil, 17, nil, nil, nil, - 21, nil, nil, 29, nil, 21, nil, 17, nil, 20, - 17, nil, 20, 21, nil, 21, nil, 48, nil, nil, - nil, nil, nil, nil, nil, 26, nil, nil, nil, 17, - nil, 20, nil, 44, nil, nil, 17, nil, 20, nil, - nil, 17, nil, 20, nil, 25, 25, nil, nil, 17, - nil, 20, nil, nil, 23, nil, nil, nil, 57, nil, - nil, 57, nil, 57, nil, nil, nil, 23, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 23, 23, nil, - nil, nil, 23, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 23, nil, nil, nil, nil, nil, - nil, nil, nil, 25, nil, 25, nil, nil, nil, nil, - 25, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 53, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 23, nil, nil, nil, 23, 23, 53, - nil, 53, 53, 53, 53, 53, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 23, 23, - nil, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 23, nil, 44, 44, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 23, 23, 44, 28, nil, nil, - 44, 28, 28, 28, nil, 44, nil, nil, nil, nil, - nil, nil, nil, 9, 9, nil, nil, 28, 28, 28, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 25, nil, 28, 28, 9, nil, nil, nil, 9, nil, - nil, nil, nil, 9, nil, nil, 23, nil, nil, nil, - 23, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 23, nil, nil, 23, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, 23, nil, nil, nil, nil, nil, nil, - 23, 44, nil, nil, nil, 23, 25, nil, 25, nil, - 25, 44, 44, 23, 53, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 25, 9, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 9, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 9, - 9, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 25, nil, nil, 25, nil, nil, nil, nil, - nil, nil, 53, nil, nil, 53, 53, 44, nil, nil, - nil, 44, 44, nil, nil, 28, 28, 28, 28, 28, - nil, nil, nil, 28, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 44, nil, nil, nil, 28, nil, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, nil, nil, nil, nil, nil, - nil, 9, nil, 28, nil, 28, 25, 44, nil, nil, - 28, nil, nil, nil, nil, nil, nil, 28, 28, nil, - nil, nil, nil, nil, nil, nil, 28, nil, 44, 44, - nil, nil, nil, nil, nil, nil, nil, 25, 53, nil, - nil, nil, nil, nil, nil, 9, nil, nil, 53, 25, - 25, nil, nil, nil, nil, nil, 28, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 9, 9, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 25, - 44, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, 53, nil, nil, nil, 44, nil, nil, 44, nil, - 53, 53, 53, 53, nil, nil, nil, nil, nil, nil, - 25, nil, nil, 53, 53, nil, nil, 44, 9, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, 44, - nil, nil, nil, 9, 25, nil, nil, 44, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 25, 9, nil, nil, nil, nil, - nil, nil, 9, nil, nil, nil, nil, 9, nil, nil, - 28, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 25, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 28, 28, nil, 28, 28, 28, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 28, nil, 28, nil, - 28, 25, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 28, nil, nil, nil, nil, - 25, nil, nil, nil, nil, nil, nil, nil, nil, 28, - nil, nil, 28, nil, nil, nil, nil, nil, nil, 25, - 28, 28, 28, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 28, nil, 53, 28, nil, nil, nil, 53, - 25, nil, nil, nil, nil, 53, 53, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 53, nil, nil, 53, - 53, nil, nil, nil, nil, nil, 53, nil, 53, nil, - nil, nil, 28, nil, nil, 28, nil, nil, nil, nil, - nil, 28, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 28, nil, 28, nil, nil, 28, - 28, nil, nil, 37, 37, 28, nil, nil, 28, nil, - 37, 37, 37, nil, nil, nil, nil, nil, nil, 28, - nil, nil, nil, nil, nil, nil, 37, 28, nil, nil, - nil, nil, nil, nil, 37, 37, nil, 53, nil, 28, - 28, 53, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 28, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 28, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 53, - nil, nil, nil, nil, 28, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 28, 28, 28, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 28, 28, 28, - 53, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 28, nil, nil, nil, 53, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 37, nil, 37, 37, 37, 37, 37, 37, 37, 37, - 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, - 37, 37, 37, 37, 37, 37, 37, 37, nil, nil, - nil, nil, nil, nil, nil, nil, 37, nil, 37, nil, - nil, 28, nil, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 28, 28, nil, nil, nil, - 28, nil, nil, nil, nil, nil, nil, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 28, - 37, nil, nil, nil, nil, nil, nil, nil, nil, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 28, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 28, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 37, 37, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 37, - nil, 37, nil, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 37, 37, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 37, nil, nil, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 37, nil, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 37, nil, nil, nil, nil, nil, nil, nil, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 37, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 37, nil, nil, nil, - nil, nil, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 37, 37, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 37, 37, - nil, nil, nil, 37, nil, nil, nil, nil, nil, nil, - nil, nil, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 37 ] - -racc_goto_pointer = [ - nil, 100, 83, nil, 34, 12, 61, 16, -300, 632, - -535, -557, -686, nil, 42, 122, 52, 36, 38, 69, - 38, 0, -52, 330, -127, 779, 123, 24, 1149, -12, - nil, 105, nil, -188, 47, -261, -344, 1752, 56, 82, - nil, -11, 55, -263, 594, -260, -16, -60, 0, nil, - 47, -39, -3, 1006, 22, -233, 66, 300, -134, -363, - -328, -231, -276, -368, -130, nil, nil, nil, nil, nil, - nil, nil, 86, 98, 99, nil, 103, -314, -594, -484, - -301, 98, -205, 24, -560, 104, -209, 120, 113, -550, - 114, -551, -411, -724, -415, -184, -660, 122, -410, -188, - -408, -669, 145, -118, -52, -351, -483, -30, -504, -287, - -529, -438, 189, -36, nil, -60, -57, -717, -361, -478, - -592, nil, nil, nil, 153, 152, 43, 155, -152, -292, - 160, -529, -368, -366, nil, -505, nil, -606, nil, -605, - nil, -508, -608, -183, -608, -290, nil, -492, -222, -469, - nil, -757, nil, nil, -464 ] - -racc_goto_default = [ - nil, nil, nil, 3, nil, 4, 353, 279, nil, 538, - nil, 831, nil, 278, nil, nil, nil, 212, 16, 11, - 213, 303, nil, 211, nil, 255, 15, nil, 19, 20, - 21, nil, 25, 691, nil, nil, nil, 26, 29, nil, - 31, 34, 33, nil, 209, 363, nil, 116, 435, 115, - 69, nil, 42, 311, 313, nil, 314, 433, nil, nil, - 635, 486, 253, nil, nil, 269, 43, 44, 45, 46, - 47, 48, 49, nil, 270, 55, nil, nil, nil, nil, - nil, nil, nil, 573, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 326, 325, 709, 328, nil, - 329, 330, nil, nil, 439, nil, nil, nil, nil, nil, - nil, 68, 70, 71, 72, nil, nil, nil, nil, 611, - nil, nil, nil, nil, 395, 750, 753, 758, 755, 756, - 757, 911, nil, nil, 761, 337, 332, 339, nil, 567, - 568, 765, 342, 345, 260 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 143, :_reduce_none, - 2, 144, :_reduce_2, - 0, 145, :_reduce_3, - 1, 145, :_reduce_4, - 3, 145, :_reduce_5, - 1, 147, :_reduce_none, - 4, 147, :_reduce_7, - 4, 150, :_reduce_8, - 2, 151, :_reduce_9, - 0, 155, :_reduce_10, - 1, 155, :_reduce_11, - 3, 155, :_reduce_12, - 0, 169, :_reduce_13, - 4, 149, :_reduce_14, - 3, 149, :_reduce_15, - 3, 149, :_reduce_none, - 3, 149, :_reduce_17, - 2, 149, :_reduce_18, - 3, 149, :_reduce_19, - 3, 149, :_reduce_20, - 3, 149, :_reduce_21, - 3, 149, :_reduce_22, - 3, 149, :_reduce_23, - 4, 149, :_reduce_none, - 3, 149, :_reduce_25, - 3, 149, :_reduce_26, - 3, 149, :_reduce_27, - 6, 149, :_reduce_none, - 6, 149, :_reduce_none, - 5, 149, :_reduce_30, - 5, 149, :_reduce_none, - 5, 149, :_reduce_none, - 3, 149, :_reduce_none, - 3, 149, :_reduce_34, - 3, 149, :_reduce_35, - 3, 149, :_reduce_36, - 1, 149, :_reduce_none, - 1, 168, :_reduce_none, - 3, 168, :_reduce_39, - 3, 168, :_reduce_40, - 2, 168, :_reduce_41, - 2, 168, :_reduce_42, - 1, 168, :_reduce_none, - 1, 158, :_reduce_none, - 1, 160, :_reduce_none, - 1, 160, :_reduce_none, - 2, 160, :_reduce_47, - 2, 160, :_reduce_48, - 2, 160, :_reduce_49, - 1, 172, :_reduce_none, - 4, 172, :_reduce_none, - 4, 172, :_reduce_none, - 4, 172, :_reduce_none, - 4, 177, :_reduce_none, - 2, 171, :_reduce_55, - 3, 171, :_reduce_none, - 4, 171, :_reduce_57, - 5, 171, :_reduce_none, - 4, 171, :_reduce_59, - 5, 171, :_reduce_none, - 4, 171, :_reduce_61, - 5, 171, :_reduce_none, - 2, 171, :_reduce_63, - 2, 171, :_reduce_64, - 1, 161, :_reduce_65, - 3, 161, :_reduce_66, - 1, 181, :_reduce_67, - 3, 181, :_reduce_68, - 1, 180, :_reduce_69, - 2, 180, :_reduce_70, - 3, 180, :_reduce_71, - 5, 180, :_reduce_none, - 2, 180, :_reduce_73, - 4, 180, :_reduce_none, - 2, 180, :_reduce_75, - 1, 180, :_reduce_76, - 3, 180, :_reduce_none, - 1, 183, :_reduce_78, - 3, 183, :_reduce_79, - 2, 182, :_reduce_80, - 3, 182, :_reduce_81, - 1, 185, :_reduce_none, - 3, 185, :_reduce_none, - 1, 184, :_reduce_84, - 4, 184, :_reduce_85, - 3, 184, :_reduce_86, - 3, 184, :_reduce_none, - 3, 184, :_reduce_none, - 3, 184, :_reduce_none, - 2, 184, :_reduce_none, - 1, 184, :_reduce_none, - 1, 159, :_reduce_92, - 4, 159, :_reduce_93, - 4, 159, :_reduce_94, - 3, 159, :_reduce_95, - 3, 159, :_reduce_96, - 3, 159, :_reduce_97, - 3, 159, :_reduce_98, - 2, 159, :_reduce_99, - 1, 159, :_reduce_none, - 1, 187, :_reduce_none, - 2, 188, :_reduce_102, - 1, 188, :_reduce_103, - 3, 188, :_reduce_104, - 1, 189, :_reduce_none, - 1, 189, :_reduce_none, - 1, 189, :_reduce_none, - 1, 189, :_reduce_108, - 1, 189, :_reduce_109, - 1, 156, :_reduce_110, - 1, 156, :_reduce_none, - 1, 157, :_reduce_112, - 3, 157, :_reduce_113, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 190, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 1, 191, :_reduce_none, - 3, 170, :_reduce_188, - 5, 170, :_reduce_189, - 3, 170, :_reduce_190, - 6, 170, :_reduce_191, - 6, 170, :_reduce_192, - 5, 170, :_reduce_193, - 5, 170, :_reduce_none, - 5, 170, :_reduce_none, - 5, 170, :_reduce_none, - 4, 170, :_reduce_none, - 3, 170, :_reduce_none, - 3, 170, :_reduce_199, - 3, 170, :_reduce_200, - 3, 170, :_reduce_201, - 3, 170, :_reduce_202, - 3, 170, :_reduce_203, - 3, 170, :_reduce_204, - 3, 170, :_reduce_205, - 3, 170, :_reduce_206, - 4, 170, :_reduce_207, - 4, 170, :_reduce_208, - 2, 170, :_reduce_209, - 2, 170, :_reduce_210, - 3, 170, :_reduce_211, - 3, 170, :_reduce_212, - 3, 170, :_reduce_213, - 3, 170, :_reduce_214, - 3, 170, :_reduce_215, - 3, 170, :_reduce_216, - 3, 170, :_reduce_217, - 3, 170, :_reduce_218, - 3, 170, :_reduce_219, - 3, 170, :_reduce_220, - 3, 170, :_reduce_221, - 3, 170, :_reduce_222, - 3, 170, :_reduce_223, - 2, 170, :_reduce_224, - 2, 170, :_reduce_225, - 3, 170, :_reduce_226, - 3, 170, :_reduce_227, - 3, 170, :_reduce_228, - 3, 170, :_reduce_229, - 3, 170, :_reduce_230, - 5, 170, :_reduce_231, - 1, 170, :_reduce_none, - 1, 167, :_reduce_none, - 1, 164, :_reduce_234, - 2, 164, :_reduce_235, - 2, 164, :_reduce_236, - 4, 164, :_reduce_237, - 2, 164, :_reduce_238, - 3, 199, :_reduce_239, - 2, 201, :_reduce_none, - 1, 202, :_reduce_241, - 1, 202, :_reduce_none, - 1, 200, :_reduce_243, - 1, 200, :_reduce_none, - 2, 200, :_reduce_245, - 4, 200, :_reduce_246, - 2, 200, :_reduce_247, - 1, 173, :_reduce_248, - 2, 173, :_reduce_249, - 2, 173, :_reduce_250, - 4, 173, :_reduce_251, - 1, 173, :_reduce_252, - 4, 205, :_reduce_none, - 1, 205, :_reduce_none, - 0, 207, :_reduce_255, - 2, 176, :_reduce_256, - 1, 206, :_reduce_none, - 2, 206, :_reduce_258, - 3, 206, :_reduce_259, - 2, 204, :_reduce_260, - 2, 203, :_reduce_261, - 0, 203, :_reduce_262, - 1, 196, :_reduce_263, - 2, 196, :_reduce_264, - 3, 196, :_reduce_265, - 4, 196, :_reduce_266, - 3, 166, :_reduce_267, - 4, 166, :_reduce_268, - 2, 166, :_reduce_269, - 1, 194, :_reduce_none, - 1, 194, :_reduce_none, - 1, 194, :_reduce_none, - 1, 194, :_reduce_none, - 1, 194, :_reduce_none, - 1, 194, :_reduce_none, - 1, 194, :_reduce_none, - 1, 194, :_reduce_none, - 1, 194, :_reduce_none, - 0, 229, :_reduce_279, - 4, 194, :_reduce_280, - 4, 194, :_reduce_281, - 3, 194, :_reduce_282, - 3, 194, :_reduce_283, - 2, 194, :_reduce_284, - 4, 194, :_reduce_285, - 4, 194, :_reduce_286, - 3, 194, :_reduce_287, - 3, 194, :_reduce_288, - 1, 194, :_reduce_289, - 4, 194, :_reduce_290, - 3, 194, :_reduce_291, - 1, 194, :_reduce_292, - 5, 194, :_reduce_293, - 4, 194, :_reduce_294, - 3, 194, :_reduce_295, - 2, 194, :_reduce_296, - 1, 194, :_reduce_none, - 2, 194, :_reduce_298, - 2, 194, :_reduce_299, - 6, 194, :_reduce_300, - 6, 194, :_reduce_301, - 0, 230, :_reduce_302, - 0, 231, :_reduce_303, - 7, 194, :_reduce_304, - 0, 232, :_reduce_305, - 0, 233, :_reduce_306, - 7, 194, :_reduce_307, - 5, 194, :_reduce_308, - 4, 194, :_reduce_309, - 5, 194, :_reduce_310, - 0, 234, :_reduce_311, - 0, 235, :_reduce_312, - 9, 194, :_reduce_313, - 0, 236, :_reduce_314, - 6, 194, :_reduce_315, - 0, 237, :_reduce_316, - 0, 238, :_reduce_317, - 8, 194, :_reduce_318, - 0, 239, :_reduce_319, - 0, 240, :_reduce_320, - 6, 194, :_reduce_321, - 0, 241, :_reduce_322, - 6, 194, :_reduce_323, - 0, 242, :_reduce_324, - 0, 243, :_reduce_325, - 9, 194, :_reduce_326, - 1, 194, :_reduce_327, - 1, 194, :_reduce_328, - 1, 194, :_reduce_329, - 1, 194, :_reduce_none, - 1, 163, :_reduce_none, - 1, 219, :_reduce_none, - 1, 219, :_reduce_none, - 1, 219, :_reduce_none, - 2, 219, :_reduce_none, - 1, 221, :_reduce_none, - 1, 221, :_reduce_none, - 1, 221, :_reduce_none, - 2, 218, :_reduce_339, - 3, 244, :_reduce_340, - 2, 244, :_reduce_341, - 1, 244, :_reduce_none, - 1, 244, :_reduce_none, - 3, 245, :_reduce_344, - 3, 245, :_reduce_345, - 1, 220, :_reduce_346, - 5, 220, :_reduce_347, - 1, 153, :_reduce_none, - 2, 153, :_reduce_349, - 1, 247, :_reduce_350, - 3, 247, :_reduce_351, - 3, 248, :_reduce_352, - 1, 178, :_reduce_none, - 2, 178, :_reduce_354, - 1, 178, :_reduce_355, - 3, 178, :_reduce_356, - 1, 249, :_reduce_357, - 2, 251, :_reduce_358, - 1, 251, :_reduce_359, - 6, 246, :_reduce_360, - 4, 246, :_reduce_361, - 4, 246, :_reduce_362, - 2, 246, :_reduce_363, - 2, 246, :_reduce_364, - 4, 246, :_reduce_365, - 2, 246, :_reduce_366, - 2, 246, :_reduce_367, - 1, 246, :_reduce_368, - 0, 255, :_reduce_369, - 5, 254, :_reduce_370, - 2, 174, :_reduce_371, - 4, 174, :_reduce_none, - 4, 174, :_reduce_none, - 4, 174, :_reduce_none, - 2, 217, :_reduce_375, - 4, 217, :_reduce_376, - 4, 217, :_reduce_377, - 3, 217, :_reduce_378, - 4, 217, :_reduce_379, - 3, 217, :_reduce_380, - 2, 217, :_reduce_381, - 1, 217, :_reduce_382, - 0, 257, :_reduce_383, - 5, 216, :_reduce_384, - 0, 258, :_reduce_385, - 5, 216, :_reduce_386, - 0, 260, :_reduce_387, - 6, 222, :_reduce_388, - 1, 259, :_reduce_389, - 1, 259, :_reduce_none, - 6, 152, :_reduce_391, - 0, 152, :_reduce_392, - 1, 261, :_reduce_393, - 1, 261, :_reduce_none, - 1, 261, :_reduce_none, - 2, 262, :_reduce_396, - 1, 262, :_reduce_397, - 2, 154, :_reduce_398, - 1, 154, :_reduce_none, - 1, 208, :_reduce_none, - 1, 208, :_reduce_none, - 1, 208, :_reduce_none, - 1, 209, :_reduce_403, - 1, 265, :_reduce_none, - 2, 265, :_reduce_405, - 3, 266, :_reduce_406, - 1, 266, :_reduce_407, - 3, 210, :_reduce_408, - 3, 211, :_reduce_409, - 3, 212, :_reduce_410, - 3, 212, :_reduce_411, - 1, 269, :_reduce_412, - 3, 269, :_reduce_413, - 1, 270, :_reduce_414, - 2, 270, :_reduce_415, - 3, 213, :_reduce_416, - 3, 213, :_reduce_417, - 1, 272, :_reduce_418, - 3, 272, :_reduce_419, - 1, 267, :_reduce_420, - 2, 267, :_reduce_421, - 1, 268, :_reduce_422, - 2, 268, :_reduce_423, - 1, 271, :_reduce_424, - 0, 274, :_reduce_425, - 3, 271, :_reduce_426, - 0, 275, :_reduce_427, - 4, 271, :_reduce_428, - 1, 273, :_reduce_429, - 1, 273, :_reduce_430, - 1, 273, :_reduce_431, - 1, 273, :_reduce_none, - 2, 192, :_reduce_433, - 1, 192, :_reduce_434, - 1, 276, :_reduce_none, - 1, 276, :_reduce_none, - 1, 276, :_reduce_none, - 1, 276, :_reduce_none, - 3, 264, :_reduce_439, - 1, 263, :_reduce_440, - 1, 263, :_reduce_441, - 2, 263, :_reduce_442, - 2, 263, :_reduce_443, - 2, 263, :_reduce_444, - 2, 263, :_reduce_445, - 1, 186, :_reduce_446, - 1, 186, :_reduce_447, - 1, 186, :_reduce_448, - 1, 186, :_reduce_449, - 1, 186, :_reduce_450, - 1, 186, :_reduce_451, - 1, 186, :_reduce_452, - 1, 186, :_reduce_453, - 1, 186, :_reduce_454, - 1, 186, :_reduce_455, - 1, 186, :_reduce_456, - 1, 214, :_reduce_457, - 1, 162, :_reduce_458, - 1, 165, :_reduce_459, - 1, 165, :_reduce_none, - 1, 224, :_reduce_461, - 3, 224, :_reduce_462, - 2, 224, :_reduce_463, - 4, 226, :_reduce_464, - 2, 226, :_reduce_465, - 1, 278, :_reduce_none, - 1, 278, :_reduce_none, - 2, 279, :_reduce_468, - 1, 279, :_reduce_469, - 1, 280, :_reduce_470, - 2, 281, :_reduce_471, - 1, 281, :_reduce_472, - 1, 282, :_reduce_473, - 3, 282, :_reduce_474, - 4, 283, :_reduce_475, - 2, 283, :_reduce_476, - 2, 283, :_reduce_477, - 1, 283, :_reduce_478, - 2, 285, :_reduce_479, - 0, 285, :_reduce_480, - 6, 277, :_reduce_481, - 4, 277, :_reduce_482, - 4, 277, :_reduce_483, - 2, 277, :_reduce_484, - 4, 277, :_reduce_485, - 2, 277, :_reduce_486, - 2, 277, :_reduce_487, - 1, 277, :_reduce_488, - 0, 277, :_reduce_489, - 1, 287, :_reduce_none, - 1, 287, :_reduce_491, - 1, 288, :_reduce_492, - 1, 288, :_reduce_493, - 1, 288, :_reduce_494, - 1, 288, :_reduce_495, - 1, 289, :_reduce_496, - 3, 289, :_reduce_497, - 1, 223, :_reduce_none, - 1, 223, :_reduce_none, - 1, 291, :_reduce_500, - 3, 291, :_reduce_none, - 1, 292, :_reduce_502, - 3, 292, :_reduce_503, - 1, 290, :_reduce_none, - 4, 290, :_reduce_none, - 3, 290, :_reduce_none, - 2, 290, :_reduce_none, - 1, 290, :_reduce_none, - 1, 252, :_reduce_509, - 3, 252, :_reduce_510, - 3, 293, :_reduce_511, - 1, 286, :_reduce_512, - 3, 286, :_reduce_513, - 1, 294, :_reduce_none, - 1, 294, :_reduce_none, - 2, 253, :_reduce_516, - 1, 253, :_reduce_517, - 1, 295, :_reduce_none, - 1, 295, :_reduce_none, - 2, 250, :_reduce_520, - 2, 284, :_reduce_521, - 0, 284, :_reduce_522, - 1, 227, :_reduce_523, - 4, 227, :_reduce_524, - 0, 215, :_reduce_525, - 2, 215, :_reduce_526, - 1, 198, :_reduce_527, - 3, 198, :_reduce_528, - 3, 296, :_reduce_529, - 2, 296, :_reduce_530, - 1, 179, :_reduce_none, - 1, 179, :_reduce_none, - 1, 179, :_reduce_none, - 1, 175, :_reduce_none, - 1, 175, :_reduce_none, - 1, 175, :_reduce_none, - 1, 175, :_reduce_none, - 1, 256, :_reduce_none, - 1, 256, :_reduce_none, - 1, 256, :_reduce_none, - 1, 228, :_reduce_none, - 1, 228, :_reduce_none, - 0, 146, :_reduce_none, - 1, 146, :_reduce_none, - 0, 193, :_reduce_none, - 1, 193, :_reduce_none, - 0, 197, :_reduce_none, - 1, 197, :_reduce_none, - 1, 197, :_reduce_none, - 1, 225, :_reduce_none, - 1, 225, :_reduce_none, - 1, 148, :_reduce_none, - 2, 148, :_reduce_none, - 0, 195, :_reduce_554 ] - -racc_reduce_n = 555 - -racc_shift_n = 968 - -racc_token_table = { - false => 0, - :error => 1, - :kCLASS => 2, - :kMODULE => 3, - :kDEF => 4, - :kUNDEF => 5, - :kBEGIN => 6, - :kRESCUE => 7, - :kENSURE => 8, - :kEND => 9, - :kIF => 10, - :kUNLESS => 11, - :kTHEN => 12, - :kELSIF => 13, - :kELSE => 14, - :kCASE => 15, - :kWHEN => 16, - :kWHILE => 17, - :kUNTIL => 18, - :kFOR => 19, - :kBREAK => 20, - :kNEXT => 21, - :kREDO => 22, - :kRETRY => 23, - :kIN => 24, - :kDO => 25, - :kDO_COND => 26, - :kDO_BLOCK => 27, - :kDO_LAMBDA => 28, - :kRETURN => 29, - :kYIELD => 30, - :kSUPER => 31, - :kSELF => 32, - :kNIL => 33, - :kTRUE => 34, - :kFALSE => 35, - :kAND => 36, - :kOR => 37, - :kNOT => 38, - :kIF_MOD => 39, - :kUNLESS_MOD => 40, - :kWHILE_MOD => 41, - :kUNTIL_MOD => 42, - :kRESCUE_MOD => 43, - :kALIAS => 44, - :kDEFINED => 45, - :klBEGIN => 46, - :klEND => 47, - :k__LINE__ => 48, - :k__FILE__ => 49, - :k__ENCODING__ => 50, - :tIDENTIFIER => 51, - :tFID => 52, - :tGVAR => 53, - :tIVAR => 54, - :tCONSTANT => 55, - :tLABEL => 56, - :tCVAR => 57, - :tNTH_REF => 58, - :tBACK_REF => 59, - :tSTRING_CONTENT => 60, - :tINTEGER => 61, - :tFLOAT => 62, - :tREGEXP_END => 63, - :tUPLUS => 64, - :tUMINUS => 65, - :tUMINUS_NUM => 66, - :tPOW => 67, - :tCMP => 68, - :tEQ => 69, - :tEQQ => 70, - :tNEQ => 71, - :tGEQ => 72, - :tLEQ => 73, - :tANDOP => 74, - :tOROP => 75, - :tMATCH => 76, - :tNMATCH => 77, - :tJSDOT => 78, - :tDOT => 79, - :tDOT2 => 80, - :tDOT3 => 81, - :tAREF => 82, - :tASET => 83, - :tLSHFT => 84, - :tRSHFT => 85, - :tCOLON2 => 86, - :tCOLON3 => 87, - :tOP_ASGN => 88, - :tASSOC => 89, - :tLPAREN => 90, - :tLPAREN2 => 91, - :tRPAREN => 92, - :tLPAREN_ARG => 93, - :ARRAY_BEG => 94, - :tRBRACK => 95, - :tLBRACE => 96, - :tLBRACE_ARG => 97, - :tSTAR => 98, - :tSTAR2 => 99, - :tAMPER => 100, - :tAMPER2 => 101, - :tTILDE => 102, - :tPERCENT => 103, - :tDIVIDE => 104, - :tPLUS => 105, - :tMINUS => 106, - :tLT => 107, - :tGT => 108, - :tPIPE => 109, - :tBANG => 110, - :tCARET => 111, - :tLCURLY => 112, - :tRCURLY => 113, - :tBACK_REF2 => 114, - :tSYMBEG => 115, - :tSTRING_BEG => 116, - :tXSTRING_BEG => 117, - :tREGEXP_BEG => 118, - :tWORDS_BEG => 119, - :tAWORDS_BEG => 120, - :tSTRING_DBEG => 121, - :tSTRING_DVAR => 122, - :tSTRING_END => 123, - :tSTRING => 124, - :tSYMBOL => 125, - :tNL => 126, - :tEH => 127, - :tCOLON => 128, - :tCOMMA => 129, - :tSPACE => 130, - :tSEMI => 131, - :tLAMBDA => 132, - :tLAMBEG => 133, - :tLBRACK2 => 134, - :tLBRACK => 135, - :tJSLBRACK => 136, - :tDSTAR => 137, - :tEQL => 138, - :tLOWEST => 139, - "-@NUM" => 140, - "+@NUM" => 141 } - -racc_nt_base = 142 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "kCLASS", - "kMODULE", - "kDEF", - "kUNDEF", - "kBEGIN", - "kRESCUE", - "kENSURE", - "kEND", - "kIF", - "kUNLESS", - "kTHEN", - "kELSIF", - "kELSE", - "kCASE", - "kWHEN", - "kWHILE", - "kUNTIL", - "kFOR", - "kBREAK", - "kNEXT", - "kREDO", - "kRETRY", - "kIN", - "kDO", - "kDO_COND", - "kDO_BLOCK", - "kDO_LAMBDA", - "kRETURN", - "kYIELD", - "kSUPER", - "kSELF", - "kNIL", - "kTRUE", - "kFALSE", - "kAND", - "kOR", - "kNOT", - "kIF_MOD", - "kUNLESS_MOD", - "kWHILE_MOD", - "kUNTIL_MOD", - "kRESCUE_MOD", - "kALIAS", - "kDEFINED", - "klBEGIN", - "klEND", - "k__LINE__", - "k__FILE__", - "k__ENCODING__", - "tIDENTIFIER", - "tFID", - "tGVAR", - "tIVAR", - "tCONSTANT", - "tLABEL", - "tCVAR", - "tNTH_REF", - "tBACK_REF", - "tSTRING_CONTENT", - "tINTEGER", - "tFLOAT", - "tREGEXP_END", - "tUPLUS", - "tUMINUS", - "tUMINUS_NUM", - "tPOW", - "tCMP", - "tEQ", - "tEQQ", - "tNEQ", - "tGEQ", - "tLEQ", - "tANDOP", - "tOROP", - "tMATCH", - "tNMATCH", - "tJSDOT", - "tDOT", - "tDOT2", - "tDOT3", - "tAREF", - "tASET", - "tLSHFT", - "tRSHFT", - "tCOLON2", - "tCOLON3", - "tOP_ASGN", - "tASSOC", - "tLPAREN", - "tLPAREN2", - "tRPAREN", - "tLPAREN_ARG", - "ARRAY_BEG", - "tRBRACK", - "tLBRACE", - "tLBRACE_ARG", - "tSTAR", - "tSTAR2", - "tAMPER", - "tAMPER2", - "tTILDE", - "tPERCENT", - "tDIVIDE", - "tPLUS", - "tMINUS", - "tLT", - "tGT", - "tPIPE", - "tBANG", - "tCARET", - "tLCURLY", - "tRCURLY", - "tBACK_REF2", - "tSYMBEG", - "tSTRING_BEG", - "tXSTRING_BEG", - "tREGEXP_BEG", - "tWORDS_BEG", - "tAWORDS_BEG", - "tSTRING_DBEG", - "tSTRING_DVAR", - "tSTRING_END", - "tSTRING", - "tSYMBOL", - "tNL", - "tEH", - "tCOLON", - "tCOMMA", - "tSPACE", - "tSEMI", - "tLAMBDA", - "tLAMBEG", - "tLBRACK2", - "tLBRACK", - "tJSLBRACK", - "tDSTAR", - "tEQL", - "tLOWEST", - "\"-@NUM\"", - "\"+@NUM\"", - "$start", - "program", - "top_compstmt", - "top_stmts", - "opt_terms", - "top_stmt", - "terms", - "stmt", - "bodystmt", - "compstmt", - "opt_rescue", - "opt_else", - "opt_ensure", - "stmts", - "fitem", - "undef_list", - "expr_value", - "lhs", - "command_call", - "mlhs", - "var_lhs", - "primary_value", - "aref_args", - "backref", - "mrhs", - "arg_value", - "expr", - "@1", - "arg", - "command", - "block_command", - "call_args", - "block_call", - "operation2", - "command_args", - "cmd_brace_block", - "opt_block_var", - "operation", - "mlhs_basic", - "mlhs_entry", - "mlhs_head", - "mlhs_item", - "mlhs_node", - "mlhs_post", - "variable", - "cname", - "cpath", - "fname", - "op", - "reswords", - "symbol", - "opt_nl", - "primary", - "none", - "args", - "trailer", - "assocs", - "paren_args", - "opt_call_args", - "rparen", - "opt_paren_args", - "opt_block_arg", - "block_arg", - "call_args2", - "open_args", - "@2", - "literal", - "strings", - "xstring", - "regexp", - "words", - "awords", - "var_ref", - "assoc_list", - "brace_block", - "method_call", - "lambda", - "then", - "if_tail", - "do", - "case_body", - "for_var", - "superclass", - "term", - "f_arglist", - "singleton", - "dot_or_colon", - "@3", - "@4", - "@5", - "@6", - "@7", - "@8", - "@9", - "@10", - "@11", - "@12", - "@13", - "@14", - "@15", - "@16", - "@17", - "f_larglist", - "lambda_body", - "block_param", - "f_block_optarg", - "f_block_opt", - "block_args_tail", - "f_block_arg", - "opt_block_args_tail", - "f_arg", - "f_rest_arg", - "do_block", - "@18", - "operation3", - "@19", - "@20", - "cases", - "@21", - "exc_list", - "exc_var", - "numeric", - "dsym", - "string", - "string1", - "string_contents", - "xstring_contents", - "word_list", - "word", - "string_content", - "qword_list", - "string_dvar", - "@22", - "@23", - "sym", - "f_args", - "kwrest_mark", - "f_kwrest", - "f_label", - "f_kw", - "f_kwarg", - "args_tail", - "opt_f_block_arg", - "opt_args_tail", - "f_optarg", - "f_norm_arg", - "f_bad_arg", - "f_arg_item", - "f_margs", - "f_marg", - "f_marg_list", - "f_opt", - "restarg_mark", - "blkarg_mark", - "assoc" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -# reduce 1 omitted - -module_eval(<<'.,.,', 'opal.y', 70) - def _reduce_2(val, _values, result) - result = new_compstmt val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 75) - def _reduce_3(val, _values, result) - result = new_block - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 79) - def _reduce_4(val, _values, result) - result = new_block val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 83) - def _reduce_5(val, _values, result) - val[0] << val[2] - result = val[0] - - result - end -.,., - -# reduce 6 omitted - -module_eval(<<'.,.,', 'opal.y', 90) - def _reduce_7(val, _values, result) - result = val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 95) - def _reduce_8(val, _values, result) - result = new_body(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 100) - def _reduce_9(val, _values, result) - result = new_compstmt val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 105) - def _reduce_10(val, _values, result) - result = new_block - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 109) - def _reduce_11(val, _values, result) - result = new_block val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 113) - def _reduce_12(val, _values, result) - val[0] << val[2] - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 119) - def _reduce_13(val, _values, result) - lexer.lex_state = :expr_fname - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 123) - def _reduce_14(val, _values, result) - result = new_alias(val[0], val[1], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 127) - def _reduce_15(val, _values, result) - result = s(:valias, value(val[1]).to_sym, value(val[2]).to_sym) - - result - end -.,., - -# reduce 16 omitted - -module_eval(<<'.,.,', 'opal.y', 132) - def _reduce_17(val, _values, result) - result = s(:valias, value(val[1]).to_sym, value(val[2]).to_sym) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 136) - def _reduce_18(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 140) - def _reduce_19(val, _values, result) - result = new_if(val[1], val[2], val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 144) - def _reduce_20(val, _values, result) - result = new_if(val[1], val[2], nil, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 148) - def _reduce_21(val, _values, result) - result = new_while(val[1], val[2], val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 152) - def _reduce_22(val, _values, result) - result = new_until(val[1], val[2], val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 156) - def _reduce_23(val, _values, result) - result = new_rescue_mod(val[1], val[0], val[2]) - - result - end -.,., - -# reduce 24 omitted - -module_eval(<<'.,.,', 'opal.y', 161) - def _reduce_25(val, _values, result) - result = new_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 165) - def _reduce_26(val, _values, result) - result = s(:masgn, val[0], s(:to_ary, val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 169) - def _reduce_27(val, _values, result) - result = new_op_asgn val[1], val[0], val[2] - - result - end -.,., - -# reduce 28 omitted - -# reduce 29 omitted - -module_eval(<<'.,.,', 'opal.y', 175) - def _reduce_30(val, _values, result) - result = s(:op_asgn2, val[0], op_to_setter(val[2]), value(val[3]).to_sym, val[4]) - - result - end -.,., - -# reduce 31 omitted - -# reduce 32 omitted - -# reduce 33 omitted - -module_eval(<<'.,.,', 'opal.y', 182) - def _reduce_34(val, _values, result) - result = new_assign val[0], val[1], s(:svalue, val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 186) - def _reduce_35(val, _values, result) - result = s(:masgn, val[0], s(:to_ary, val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 190) - def _reduce_36(val, _values, result) - result = s(:masgn, val[0], val[2]) - - result - end -.,., - -# reduce 37 omitted - -# reduce 38 omitted - -module_eval(<<'.,.,', 'opal.y', 197) - def _reduce_39(val, _values, result) - result = s(:and, val[0], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 201) - def _reduce_40(val, _values, result) - result = s(:or, val[0], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 205) - def _reduce_41(val, _values, result) - result = new_unary_call(['!', []], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 209) - def _reduce_42(val, _values, result) - result = new_unary_call(val[0], val[1]) - - result - end -.,., - -# reduce 43 omitted - -# reduce 44 omitted - -# reduce 45 omitted - -# reduce 46 omitted - -module_eval(<<'.,.,', 'opal.y', 219) - def _reduce_47(val, _values, result) - result = new_return(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 223) - def _reduce_48(val, _values, result) - result = new_break(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 227) - def _reduce_49(val, _values, result) - result = new_next(val[0], val[1]) - - result - end -.,., - -# reduce 50 omitted - -# reduce 51 omitted - -# reduce 52 omitted - -# reduce 53 omitted - -# reduce 54 omitted - -module_eval(<<'.,.,', 'opal.y', 239) - def _reduce_55(val, _values, result) - result = new_call(nil, val[0], val[1]) - - result - end -.,., - -# reduce 56 omitted - -module_eval(<<'.,.,', 'opal.y', 244) - def _reduce_57(val, _values, result) - result = new_js_call(val[0], val[2], val[3]) - - result - end -.,., - -# reduce 58 omitted - -module_eval(<<'.,.,', 'opal.y', 249) - def _reduce_59(val, _values, result) - result = new_call(val[0], val[2], val[3]) - - result - end -.,., - -# reduce 60 omitted - -module_eval(<<'.,.,', 'opal.y', 254) - def _reduce_61(val, _values, result) - result = new_call(val[0], val[2], val[3]) - - result - end -.,., - -# reduce 62 omitted - -module_eval(<<'.,.,', 'opal.y', 259) - def _reduce_63(val, _values, result) - result = new_super(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 263) - def _reduce_64(val, _values, result) - result = new_yield val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 268) - def _reduce_65(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 272) - def _reduce_66(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 277) - def _reduce_67(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 281) - def _reduce_68(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 286) - def _reduce_69(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 290) - def _reduce_70(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 294) - def _reduce_71(val, _values, result) - result = val[0] << s(:splat, val[2]) - - result - end -.,., - -# reduce 72 omitted - -module_eval(<<'.,.,', 'opal.y', 299) - def _reduce_73(val, _values, result) - result = val[0] << s(:splat) - - result - end -.,., - -# reduce 74 omitted - -module_eval(<<'.,.,', 'opal.y', 304) - def _reduce_75(val, _values, result) - result = s(:array, s(:splat, val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 308) - def _reduce_76(val, _values, result) - result = s(:array, s(:splat)) - - result - end -.,., - -# reduce 77 omitted - -module_eval(<<'.,.,', 'opal.y', 314) - def _reduce_78(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 318) - def _reduce_79(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 323) - def _reduce_80(val, _values, result) - result = s(:array, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 327) - def _reduce_81(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -# reduce 82 omitted - -# reduce 83 omitted - -module_eval(<<'.,.,', 'opal.y', 335) - def _reduce_84(val, _values, result) - result = new_assignable val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 339) - def _reduce_85(val, _values, result) - args = val[2] ? val[2] : [] - result = s(:attrasgn, val[0], :[]=, s(:arglist, *args)) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 344) - def _reduce_86(val, _values, result) - result = new_call val[0], val[2], [] - - result - end -.,., - -# reduce 87 omitted - -# reduce 88 omitted - -# reduce 89 omitted - -# reduce 90 omitted - -# reduce 91 omitted - -module_eval(<<'.,.,', 'opal.y', 354) - def _reduce_92(val, _values, result) - result = new_assignable val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 358) - def _reduce_93(val, _values, result) - result = new_js_attrasgn(val[0], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 362) - def _reduce_94(val, _values, result) - result = new_attrasgn(val[0], :[]=, val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 366) - def _reduce_95(val, _values, result) - result = new_attrasgn(val[0], op_to_setter(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 370) - def _reduce_96(val, _values, result) - result = new_attrasgn(val[0], op_to_setter(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 374) - def _reduce_97(val, _values, result) - result = new_attrasgn(val[0], op_to_setter(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 378) - def _reduce_98(val, _values, result) - result = new_colon2(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 382) - def _reduce_99(val, _values, result) - result = new_colon3(val[0], val[1]) - - result - end -.,., - -# reduce 100 omitted - -# reduce 101 omitted - -module_eval(<<'.,.,', 'opal.y', 390) - def _reduce_102(val, _values, result) - result = new_colon3(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 394) - def _reduce_103(val, _values, result) - result = new_const(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 398) - def _reduce_104(val, _values, result) - result = new_colon2(val[0], val[1], val[2]) - - result - end -.,., - -# reduce 105 omitted - -# reduce 106 omitted - -# reduce 107 omitted - -module_eval(<<'.,.,', 'opal.y', 406) - def _reduce_108(val, _values, result) - lexer.lex_state = :expr_end - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 411) - def _reduce_109(val, _values, result) - lexer.lex_state = :expr_end - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 417) - def _reduce_110(val, _values, result) - result = new_sym(val[0]) - - result - end -.,., - -# reduce 111 omitted - -module_eval(<<'.,.,', 'opal.y', 423) - def _reduce_112(val, _values, result) - result = s(:undef, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 427) - def _reduce_113(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -# reduce 114 omitted - -# reduce 115 omitted - -# reduce 116 omitted - -# reduce 117 omitted - -# reduce 118 omitted - -# reduce 119 omitted - -# reduce 120 omitted - -# reduce 121 omitted - -# reduce 122 omitted - -# reduce 123 omitted - -# reduce 124 omitted - -# reduce 125 omitted - -# reduce 126 omitted - -# reduce 127 omitted - -# reduce 128 omitted - -# reduce 129 omitted - -# reduce 130 omitted - -# reduce 131 omitted - -# reduce 132 omitted - -# reduce 133 omitted - -# reduce 134 omitted - -# reduce 135 omitted - -# reduce 136 omitted - -# reduce 137 omitted - -# reduce 138 omitted - -# reduce 139 omitted - -# reduce 140 omitted - -# reduce 141 omitted - -# reduce 142 omitted - -# reduce 143 omitted - -# reduce 144 omitted - -# reduce 145 omitted - -# reduce 146 omitted - -# reduce 147 omitted - -# reduce 148 omitted - -# reduce 149 omitted - -# reduce 150 omitted - -# reduce 151 omitted - -# reduce 152 omitted - -# reduce 153 omitted - -# reduce 154 omitted - -# reduce 155 omitted - -# reduce 156 omitted - -# reduce 157 omitted - -# reduce 158 omitted - -# reduce 159 omitted - -# reduce 160 omitted - -# reduce 161 omitted - -# reduce 162 omitted - -# reduce 163 omitted - -# reduce 164 omitted - -# reduce 165 omitted - -# reduce 166 omitted - -# reduce 167 omitted - -# reduce 168 omitted - -# reduce 169 omitted - -# reduce 170 omitted - -# reduce 171 omitted - -# reduce 172 omitted - -# reduce 173 omitted - -# reduce 174 omitted - -# reduce 175 omitted - -# reduce 176 omitted - -# reduce 177 omitted - -# reduce 178 omitted - -# reduce 179 omitted - -# reduce 180 omitted - -# reduce 181 omitted - -# reduce 182 omitted - -# reduce 183 omitted - -# reduce 184 omitted - -# reduce 185 omitted - -# reduce 186 omitted - -# reduce 187 omitted - -module_eval(<<'.,.,', 'opal.y', 447) - def _reduce_188(val, _values, result) - result = new_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 451) - def _reduce_189(val, _values, result) - result = new_assign val[0], val[1], s(:rescue_mod, val[2], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 455) - def _reduce_190(val, _values, result) - result = new_op_asgn val[1], val[0], val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 459) - def _reduce_191(val, _values, result) - result = new_op_asgn1(val[0], val[2], val[4], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 463) - def _reduce_192(val, _values, result) - raise ".JS[...] #{val[4]} is not supported" - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 467) - def _reduce_193(val, _values, result) - result = s(:op_asgn2, val[0], op_to_setter(val[2]), value(val[3]).to_sym, val[4]) - - result - end -.,., - -# reduce 194 omitted - -# reduce 195 omitted - -# reduce 196 omitted - -# reduce 197 omitted - -# reduce 198 omitted - -module_eval(<<'.,.,', 'opal.y', 476) - def _reduce_199(val, _values, result) - result = new_irange(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 480) - def _reduce_200(val, _values, result) - result = new_erange(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 484) - def _reduce_201(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 488) - def _reduce_202(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 492) - def _reduce_203(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 496) - def _reduce_204(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 500) - def _reduce_205(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 504) - def _reduce_206(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 508) - def _reduce_207(val, _values, result) - result = new_call new_binary_call(new_int(val[1]), val[2], val[3]), [:"-@", []], [] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 512) - def _reduce_208(val, _values, result) - result = new_call new_binary_call(new_float(val[1]), val[2], val[3]), [:"-@", []], [] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 516) - def _reduce_209(val, _values, result) - result = new_call val[1], [:"+@", []], [] - if [:int, :float].include? val[1].type - result = val[1] - end - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 523) - def _reduce_210(val, _values, result) - result = new_call val[1], [:"-@", []], [] - if val[1].type == :int - val[1][1] = -val[1][1] - result = val[1] - elsif val[1].type == :float - val[1][1] = -val[1][1].to_f - result = val[1] - end - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 534) - def _reduce_211(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 538) - def _reduce_212(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 542) - def _reduce_213(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 546) - def _reduce_214(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 550) - def _reduce_215(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 554) - def _reduce_216(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 558) - def _reduce_217(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 562) - def _reduce_218(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 566) - def _reduce_219(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 570) - def _reduce_220(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 574) - def _reduce_221(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 578) - def _reduce_222(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 582) - def _reduce_223(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 586) - def _reduce_224(val, _values, result) - result = new_unary_call(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 590) - def _reduce_225(val, _values, result) - result = new_unary_call(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 594) - def _reduce_226(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 598) - def _reduce_227(val, _values, result) - result = new_binary_call(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 602) - def _reduce_228(val, _values, result) - result = new_and(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 606) - def _reduce_229(val, _values, result) - result = new_or(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 610) - def _reduce_230(val, _values, result) - result = s(:defined, val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 614) - def _reduce_231(val, _values, result) - result = new_if(val[1], val[0], val[2], val[4]) - - result - end -.,., - -# reduce 232 omitted - -# reduce 233 omitted - -module_eval(<<'.,.,', 'opal.y', 622) - def _reduce_234(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 626) - def _reduce_235(val, _values, result) - result = [val[0]] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 630) - def _reduce_236(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 634) - def _reduce_237(val, _values, result) - val[0] << s(:hash, *val[2]) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 639) - def _reduce_238(val, _values, result) - result = [s(:hash, *val[0])] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 644) - def _reduce_239(val, _values, result) - result = val[1] - - result - end -.,., - -# reduce 240 omitted - -module_eval(<<'.,.,', 'opal.y', 651) - def _reduce_241(val, _values, result) - result = [] - - result - end -.,., - -# reduce 242 omitted - -module_eval(<<'.,.,', 'opal.y', 657) - def _reduce_243(val, _values, result) - result = [] - - result - end -.,., - -# reduce 244 omitted - -module_eval(<<'.,.,', 'opal.y', 662) - def _reduce_245(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 666) - def _reduce_246(val, _values, result) - result = val[0] - result << new_hash(nil, val[2], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 671) - def _reduce_247(val, _values, result) - result = [new_hash(nil, val[0], nil)] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 676) - def _reduce_248(val, _values, result) - result = [val[0]] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 680) - def _reduce_249(val, _values, result) - result = val[0] - add_block_pass val[0], val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 685) - def _reduce_250(val, _values, result) - result = [new_hash(nil, val[0], nil)] - add_block_pass result, val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 690) - def _reduce_251(val, _values, result) - result = val[0] - result << new_hash(nil, val[2], nil) - result << val[3] if val[3] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 696) - def _reduce_252(val, _values, result) - result = [] - add_block_pass result, val[0] - - result - end -.,., - -# reduce 253 omitted - -# reduce 254 omitted - -module_eval(<<'.,.,', 'opal.y', 704) - def _reduce_255(val, _values, result) - lexer.cmdarg_push 1 - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 708) - def _reduce_256(val, _values, result) - lexer.cmdarg_pop - result = val[1] - - result - end -.,., - -# reduce 257 omitted - -module_eval(<<'.,.,', 'opal.y', 715) - def _reduce_258(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 719) - def _reduce_259(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 724) - def _reduce_260(val, _values, result) - result = new_block_pass(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 729) - def _reduce_261(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 733) - def _reduce_262(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 738) - def _reduce_263(val, _values, result) - result = [val[0]] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 742) - def _reduce_264(val, _values, result) - result = [new_splat(val[0], val[1])] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 746) - def _reduce_265(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 750) - def _reduce_266(val, _values, result) - result = val[0] << new_splat(val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 755) - def _reduce_267(val, _values, result) - val[0] << val[2] - result = s(:array, *val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 760) - def _reduce_268(val, _values, result) - val[0] << s(:splat, val[3]) - result = s(:array, *val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 765) - def _reduce_269(val, _values, result) - result = s(:splat, val[1]) - - result - end -.,., - -# reduce 270 omitted - -# reduce 271 omitted - -# reduce 272 omitted - -# reduce 273 omitted - -# reduce 274 omitted - -# reduce 275 omitted - -# reduce 276 omitted - -# reduce 277 omitted - -# reduce 278 omitted - -module_eval(<<'.,.,', 'opal.y', 779) - def _reduce_279(val, _values, result) - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 783) - def _reduce_280(val, _values, result) - result = s(:begin, val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 787) - def _reduce_281(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 791) - def _reduce_282(val, _values, result) - result = new_paren(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 795) - def _reduce_283(val, _values, result) - result = new_colon2(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 799) - def _reduce_284(val, _values, result) - result = new_colon3(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 803) - def _reduce_285(val, _values, result) - result = new_call val[0], [:[], []], val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 807) - def _reduce_286(val, _values, result) - result = new_js_call val[0], [:[], []], val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 811) - def _reduce_287(val, _values, result) - result = new_array(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 815) - def _reduce_288(val, _values, result) - result = new_hash(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 819) - def _reduce_289(val, _values, result) - result = new_return(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 823) - def _reduce_290(val, _values, result) - result = new_yield val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 827) - def _reduce_291(val, _values, result) - result = s(:yield) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 831) - def _reduce_292(val, _values, result) - result = s(:yield) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 835) - def _reduce_293(val, _values, result) - result = s(:defined, val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 839) - def _reduce_294(val, _values, result) - result = new_unary_call(['!', []], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 843) - def _reduce_295(val, _values, result) - result = new_unary_call(['!', []], new_nil(val[0])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 847) - def _reduce_296(val, _values, result) - result = new_call(nil, val[0], []) - result << val[1] - - result - end -.,., - -# reduce 297 omitted - -module_eval(<<'.,.,', 'opal.y', 853) - def _reduce_298(val, _values, result) - val[0] << val[1] - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 858) - def _reduce_299(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 862) - def _reduce_300(val, _values, result) - result = new_if(val[0], val[1], val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 866) - def _reduce_301(val, _values, result) - result = new_if(val[0], val[1], val[4], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 870) - def _reduce_302(val, _values, result) - lexer.cond_push 1 - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 875) - def _reduce_303(val, _values, result) - lexer.cond_pop - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 879) - def _reduce_304(val, _values, result) - result = s(:while, val[2], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 883) - def _reduce_305(val, _values, result) - lexer.cond_push 1 - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 888) - def _reduce_306(val, _values, result) - lexer.cond_pop - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 892) - def _reduce_307(val, _values, result) - result = s(:until, val[2], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 896) - def _reduce_308(val, _values, result) - result = s(:case, val[1], *val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 900) - def _reduce_309(val, _values, result) - result = s(:case, nil, *val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 904) - def _reduce_310(val, _values, result) - result = s(:case, nil, val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 908) - def _reduce_311(val, _values, result) - lexer.cond_push 1 - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 913) - def _reduce_312(val, _values, result) - lexer.cond_pop - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 917) - def _reduce_313(val, _values, result) - result = s(:for, val[4], val[1], val[7]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 921) - def _reduce_314(val, _values, result) - # ... - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 925) - def _reduce_315(val, _values, result) - result = new_class val[0], val[1], val[2], val[4], val[5] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 929) - def _reduce_316(val, _values, result) - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 933) - def _reduce_317(val, _values, result) - # ... - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 937) - def _reduce_318(val, _values, result) - result = new_sclass(val[0], val[3], val[6], val[7]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 941) - def _reduce_319(val, _values, result) - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 945) - def _reduce_320(val, _values, result) - # ... - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 949) - def _reduce_321(val, _values, result) - result = new_module(val[0], val[2], val[4], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 953) - def _reduce_322(val, _values, result) - push_scope - lexer.lex_state = :expr_endfn - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 958) - def _reduce_323(val, _values, result) - result = new_def(val[0], nil, val[1], val[3], val[4], val[5]) - pop_scope - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 963) - def _reduce_324(val, _values, result) - lexer.lex_state = :expr_fname - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 967) - def _reduce_325(val, _values, result) - push_scope - lexer.lex_state = :expr_endfn - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 972) - def _reduce_326(val, _values, result) - result = new_def(val[0], val[1], val[4], val[6], val[7], val[8]) - pop_scope - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 977) - def _reduce_327(val, _values, result) - result = new_break(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 981) - def _reduce_328(val, _values, result) - result = s(:next) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 985) - def _reduce_329(val, _values, result) - result = s(:redo) - - result - end -.,., - -# reduce 330 omitted - -# reduce 331 omitted - -# reduce 332 omitted - -# reduce 333 omitted - -# reduce 334 omitted - -# reduce 335 omitted - -# reduce 336 omitted - -# reduce 337 omitted - -# reduce 338 omitted - -module_eval(<<'.,.,', 'opal.y', 1002) - def _reduce_339(val, _values, result) - result = new_call nil, [:lambda, []], [] - result << new_iter(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1008) - def _reduce_340(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1012) - def _reduce_341(val, _values, result) - result = nil - - result - end -.,., - -# reduce 342 omitted - -# reduce 343 omitted - -module_eval(<<'.,.,', 'opal.y', 1019) - def _reduce_344(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1023) - def _reduce_345(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1028) - def _reduce_346(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1032) - def _reduce_347(val, _values, result) - result = new_if(val[0], val[1], val[3], val[4]) - - result - end -.,., - -# reduce 348 omitted - -module_eval(<<'.,.,', 'opal.y', 1038) - def _reduce_349(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1043) - def _reduce_350(val, _values, result) - result = s(:block, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1047) - def _reduce_351(val, _values, result) - val[0] << val[2] - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1053) - def _reduce_352(val, _values, result) - result = new_assign(new_assignable(new_ident( - val[0])), val[1], val[2]) - - result - end -.,., - -# reduce 353 omitted - -module_eval(<<'.,.,', 'opal.y', 1060) - def _reduce_354(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1064) - def _reduce_355(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1068) - def _reduce_356(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1073) - def _reduce_357(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1078) - def _reduce_358(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1082) - def _reduce_359(val, _values, result) - nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1087) - def _reduce_360(val, _values, result) - result = new_block_args(val[0], val[2], val[4], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1091) - def _reduce_361(val, _values, result) - result = new_block_args(val[0], val[2], nil, val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1095) - def _reduce_362(val, _values, result) - result = new_block_args(val[0], nil, val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1099) - def _reduce_363(val, _values, result) - result = new_block_args(val[0], nil, nil, nil) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1103) - def _reduce_364(val, _values, result) - result = new_block_args(val[0], nil, nil, val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1107) - def _reduce_365(val, _values, result) - result = new_block_args(nil, val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1111) - def _reduce_366(val, _values, result) - result = new_block_args(nil, val[0], nil, val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1115) - def _reduce_367(val, _values, result) - result = new_block_args(nil, nil, val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1119) - def _reduce_368(val, _values, result) - result = new_block_args(nil, nil, nil, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1124) - def _reduce_369(val, _values, result) - push_scope :block - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1129) - def _reduce_370(val, _values, result) - result = new_iter val[2], val[3] - pop_scope - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1135) - def _reduce_371(val, _values, result) - val[0] << val[1] - result = val[0] - - result - end -.,., - -# reduce 372 omitted - -# reduce 373 omitted - -# reduce 374 omitted - -module_eval(<<'.,.,', 'opal.y', 1144) - def _reduce_375(val, _values, result) - result = new_call(nil, val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1148) - def _reduce_376(val, _values, result) - result = new_call(val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1152) - def _reduce_377(val, _values, result) - result = new_js_call(val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1156) - def _reduce_378(val, _values, result) - result = new_call(val[0], [:call, []], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1160) - def _reduce_379(val, _values, result) - result = new_call(val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1164) - def _reduce_380(val, _values, result) - result = new_call(val[0], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1168) - def _reduce_381(val, _values, result) - result = new_super(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1172) - def _reduce_382(val, _values, result) - result = new_super(val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1177) - def _reduce_383(val, _values, result) - push_scope :block - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1182) - def _reduce_384(val, _values, result) - result = new_iter val[2], val[3] - pop_scope - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1187) - def _reduce_385(val, _values, result) - push_scope :block - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1192) - def _reduce_386(val, _values, result) - result = new_iter val[2], val[3] - pop_scope - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1198) - def _reduce_387(val, _values, result) - result = lexer.line - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1202) - def _reduce_388(val, _values, result) - part = s(:when, s(:array, *val[2]), val[4]) - result = [part] - result.push(*val[5]) if val[5] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1209) - def _reduce_389(val, _values, result) - result = [val[0]] - - result - end -.,., - -# reduce 390 omitted - -module_eval(<<'.,.,', 'opal.y', 1215) - def _reduce_391(val, _values, result) - exc = val[1] || s(:array) - exc << new_assign(val[2], val[2], s(:gvar, '$!'.intern)) if val[2] - result = [s(:resbody, exc, val[4])] - result.push val[5].first if val[5] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1222) - def _reduce_392(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1227) - def _reduce_393(val, _values, result) - result = s(:array, val[0]) - - result - end -.,., - -# reduce 394 omitted - -# reduce 395 omitted - -module_eval(<<'.,.,', 'opal.y', 1234) - def _reduce_396(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1238) - def _reduce_397(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1243) - def _reduce_398(val, _values, result) - result = val[1].nil? ? s(:nil) : val[1] - - result - end -.,., - -# reduce 399 omitted - -# reduce 400 omitted - -# reduce 401 omitted - -# reduce 402 omitted - -module_eval(<<'.,.,', 'opal.y', 1253) - def _reduce_403(val, _values, result) - result = new_str val[0] - - result - end -.,., - -# reduce 404 omitted - -module_eval(<<'.,.,', 'opal.y', 1259) - def _reduce_405(val, _values, result) - result = str_append val[0], val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1264) - def _reduce_406(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1268) - def _reduce_407(val, _values, result) - result = s(:str, value(val[0])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1273) - def _reduce_408(val, _values, result) - result = new_xstr(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1278) - def _reduce_409(val, _values, result) - result = new_regexp val[1], val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1283) - def _reduce_410(val, _values, result) - result = s(:array) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1287) - def _reduce_411(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1292) - def _reduce_412(val, _values, result) - result = s(:array) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1296) - def _reduce_413(val, _values, result) - part = val[1] - part = s(:dstr, "", val[1]) if part.type == :evstr - result = val[0] << part - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1303) - def _reduce_414(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1307) - def _reduce_415(val, _values, result) - result = val[0].concat([val[1]]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1312) - def _reduce_416(val, _values, result) - result = s(:array) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1316) - def _reduce_417(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1321) - def _reduce_418(val, _values, result) - result = s(:array) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1325) - def _reduce_419(val, _values, result) - result = val[0] << s(:str, value(val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1330) - def _reduce_420(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1334) - def _reduce_421(val, _values, result) - result = str_append val[0], val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1339) - def _reduce_422(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1343) - def _reduce_423(val, _values, result) - result = str_append val[0], val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1348) - def _reduce_424(val, _values, result) - result = new_str_content(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1352) - def _reduce_425(val, _values, result) - result = lexer.strterm - lexer.strterm = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1357) - def _reduce_426(val, _values, result) - lexer.strterm = val[1] - result = new_evstr(val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1362) - def _reduce_427(val, _values, result) - lexer.cond_push 0 - lexer.cmdarg_push 0 - result = lexer.strterm - lexer.strterm = nil - lexer.lex_state = :expr_beg - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1370) - def _reduce_428(val, _values, result) - lexer.strterm = val[1] - lexer.cond_lexpop - lexer.cmdarg_lexpop - result = new_evstr(val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1378) - def _reduce_429(val, _values, result) - result = new_gvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1382) - def _reduce_430(val, _values, result) - result = new_ivar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1386) - def _reduce_431(val, _values, result) - result = new_cvar(val[0]) - - result - end -.,., - -# reduce 432 omitted - -module_eval(<<'.,.,', 'opal.y', 1393) - def _reduce_433(val, _values, result) - result = new_sym(val[1]) - lexer.lex_state = :expr_end - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1398) - def _reduce_434(val, _values, result) - result = new_sym(val[0]) - - result - end -.,., - -# reduce 435 omitted - -# reduce 436 omitted - -# reduce 437 omitted - -# reduce 438 omitted - -module_eval(<<'.,.,', 'opal.y', 1408) - def _reduce_439(val, _values, result) - result = new_dsym val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1413) - def _reduce_440(val, _values, result) - result = new_int(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1417) - def _reduce_441(val, _values, result) - result = new_float(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1421) - def _reduce_442(val, _values, result) - result = negate_num(new_int(val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1425) - def _reduce_443(val, _values, result) - result = negate_num(new_float(val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1429) - def _reduce_444(val, _values, result) - result = new_int(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1433) - def _reduce_445(val, _values, result) - result = new_float(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1438) - def _reduce_446(val, _values, result) - result = new_ident(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1442) - def _reduce_447(val, _values, result) - result = new_ivar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1446) - def _reduce_448(val, _values, result) - result = new_gvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1450) - def _reduce_449(val, _values, result) - result = new_const(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1454) - def _reduce_450(val, _values, result) - result = new_cvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1458) - def _reduce_451(val, _values, result) - result = new_nil(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1462) - def _reduce_452(val, _values, result) - result = new_self(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1466) - def _reduce_453(val, _values, result) - result = new_true(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1470) - def _reduce_454(val, _values, result) - result = new_false(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1474) - def _reduce_455(val, _values, result) - result = new___FILE__(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1478) - def _reduce_456(val, _values, result) - result = new___LINE__(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1483) - def _reduce_457(val, _values, result) - result = new_var_ref(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1488) - def _reduce_458(val, _values, result) - result = new_assignable val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1493) - def _reduce_459(val, _values, result) - result = s(:nth_ref, value(val[0])) - - result - end -.,., - -# reduce 460 omitted - -module_eval(<<'.,.,', 'opal.y', 1499) - def _reduce_461(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1503) - def _reduce_462(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1507) - def _reduce_463(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1512) - def _reduce_464(val, _values, result) - result = val[1] - lexer.lex_state = :expr_beg - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1517) - def _reduce_465(val, _values, result) - result = val[0] - lexer.lex_state = :expr_beg - - result - end -.,., - -# reduce 466 omitted - -# reduce 467 omitted - -module_eval(<<'.,.,', 'opal.y', 1526) - def _reduce_468(val, _values, result) - result = new_kwrestarg(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1530) - def _reduce_469(val, _values, result) - result = new_kwrestarg() - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1535) - def _reduce_470(val, _values, result) - result = new_sym(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1540) - def _reduce_471(val, _values, result) - result = new_kwoptarg(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1544) - def _reduce_472(val, _values, result) - result = new_kwarg(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1549) - def _reduce_473(val, _values, result) - result = [val[0]] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1553) - def _reduce_474(val, _values, result) - result = val[0] - result << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1559) - def _reduce_475(val, _values, result) - result = new_args_tail(val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1563) - def _reduce_476(val, _values, result) - result = new_args_tail(val[0], nil, val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1567) - def _reduce_477(val, _values, result) - result = new_args_tail(nil, val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1571) - def _reduce_478(val, _values, result) - result = new_args_tail(nil, nil, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1576) - def _reduce_479(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1580) - def _reduce_480(val, _values, result) - result = new_args_tail(nil, nil, nil) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1585) - def _reduce_481(val, _values, result) - result = new_args(val[0], val[2], val[4], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1589) - def _reduce_482(val, _values, result) - result = new_args(val[0], val[2], nil, val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1593) - def _reduce_483(val, _values, result) - result = new_args(val[0], nil, val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1597) - def _reduce_484(val, _values, result) - result = new_args(val[0], nil, nil, val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1601) - def _reduce_485(val, _values, result) - result = new_args(nil, val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1605) - def _reduce_486(val, _values, result) - result = new_args(nil, val[0], nil, val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1609) - def _reduce_487(val, _values, result) - result = new_args(nil, nil, val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1613) - def _reduce_488(val, _values, result) - result = new_args(nil, nil, nil, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1617) - def _reduce_489(val, _values, result) - result = new_args(nil, nil, nil, nil) - - result - end -.,., - -# reduce 490 omitted - -module_eval(<<'.,.,', 'opal.y', 1623) - def _reduce_491(val, _values, result) - result = value(val[0]).to_sym - scope.add_local result - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1629) - def _reduce_492(val, _values, result) - raise 'formal argument cannot be a constant' - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1633) - def _reduce_493(val, _values, result) - raise 'formal argument cannot be an instance variable' - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1637) - def _reduce_494(val, _values, result) - raise 'formal argument cannot be a class variable' - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1641) - def _reduce_495(val, _values, result) - raise 'formal argument cannot be a global variable' - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1646) - def _reduce_496(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1650) - def _reduce_497(val, _values, result) - result = val[1] - - result - end -.,., - -# reduce 498 omitted - -# reduce 499 omitted - -module_eval(<<'.,.,', 'opal.y', 1658) - def _reduce_500(val, _values, result) - result = s(:lasgn, val[0]) - - result - end -.,., - -# reduce 501 omitted - -module_eval(<<'.,.,', 'opal.y', 1664) - def _reduce_502(val, _values, result) - result = s(:array, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1668) - def _reduce_503(val, _values, result) - val[0] << val[2] - result = val[0] - - result - end -.,., - -# reduce 504 omitted - -# reduce 505 omitted - -# reduce 506 omitted - -# reduce 507 omitted - -# reduce 508 omitted - -module_eval(<<'.,.,', 'opal.y', 1680) - def _reduce_509(val, _values, result) - result = [val[0]] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1684) - def _reduce_510(val, _values, result) - val[0] << val[2] - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1690) - def _reduce_511(val, _values, result) - result = new_assign(new_assignable(new_ident(val[0])), val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1695) - def _reduce_512(val, _values, result) - result = s(:block, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1699) - def _reduce_513(val, _values, result) - result = val[0] - val[0] << val[2] - - result - end -.,., - -# reduce 514 omitted - -# reduce 515 omitted - -module_eval(<<'.,.,', 'opal.y', 1708) - def _reduce_516(val, _values, result) - result = "*#{value(val[1])}".to_sym - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1712) - def _reduce_517(val, _values, result) - result = :"*" - - result - end -.,., - -# reduce 518 omitted - -# reduce 519 omitted - -module_eval(<<'.,.,', 'opal.y', 1720) - def _reduce_520(val, _values, result) - result = "&#{value(val[1])}".to_sym - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1725) - def _reduce_521(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1729) - def _reduce_522(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1734) - def _reduce_523(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1738) - def _reduce_524(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1743) - def _reduce_525(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1747) - def _reduce_526(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1752) - def _reduce_527(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1756) - def _reduce_528(val, _values, result) - result = val[0].push(*val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1761) - def _reduce_529(val, _values, result) - result = [val[0], val[2]] - - result - end -.,., - -module_eval(<<'.,.,', 'opal.y', 1765) - def _reduce_530(val, _values, result) - result = [new_sym(val[0]), val[1]] - - result - end -.,., - -# reduce 531 omitted - -# reduce 532 omitted - -# reduce 533 omitted - -# reduce 534 omitted - -# reduce 535 omitted - -# reduce 536 omitted - -# reduce 537 omitted - -# reduce 538 omitted - -# reduce 539 omitted - -# reduce 540 omitted - -# reduce 541 omitted - -# reduce 542 omitted - -# reduce 543 omitted - -# reduce 544 omitted - -# reduce 545 omitted - -# reduce 546 omitted - -# reduce 547 omitted - -# reduce 548 omitted - -# reduce 549 omitted - -# reduce 550 omitted - -# reduce 551 omitted - -# reduce 552 omitted - -# reduce 553 omitted - -module_eval(<<'.,.,', 'opal.y', 1802) - def _reduce_554(val, _values, result) - result = nil - - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module Opal diff --git a/test/racc/regress/php_serialization b/test/racc/regress/php_serialization deleted file mode 100644 index e412db1cc8..0000000000 --- a/test/racc/regress/php_serialization +++ /dev/null @@ -1,336 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - -require 'php_serialization/tokenizer' - -module PhpSerialization - class Unserializer < Racc::Parser - -module_eval(<<'...end php_serialization.y/module_eval...', 'php_serialization.y', 84) - def initialize(tokenizer_klass = Tokenizer) - @tokenizer_klass = tokenizer_klass - end - - def run(string) - @tokenizer = @tokenizer_klass.new(string) - yyparse(@tokenizer, :each) - return @object - ensure - @tokenizer = nil - end - - def next_token - @tokenizer.next_token - end -...end php_serialization.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 9, 10, 16, 17, 11, 12, 13, 18, 14, 9, - 10, 15, 19, 11, 12, 13, 20, 14, 21, 46, - 15, 9, 10, 22, 23, 11, 12, 13, 24, 14, - 9, 10, 15, 25, 11, 12, 13, 26, 14, 27, - 51, 15, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 43, 47, 49 ] - -racc_action_check = [ - 0, 0, 1, 2, 0, 0, 0, 3, 0, 42, - 42, 0, 4, 42, 42, 42, 5, 42, 6, 42, - 42, 45, 45, 10, 11, 45, 45, 45, 12, 45, - 50, 50, 45, 13, 50, 50, 50, 14, 50, 15, - 50, 50, 16, 22, 23, 24, 25, 26, 27, 32, - 33, 34, 35, 36, 37, 39, 41, 43, 47 ] - -racc_action_pointer = [ - -3, 2, 1, 5, 10, 14, 16, nil, nil, nil, - 18, 19, 23, 28, 32, 34, 42, nil, nil, nil, - nil, nil, 37, 38, 39, 40, 41, 42, nil, nil, - nil, nil, 44, 45, 46, 42, 43, 42, nil, 50, - nil, 50, 6, 52, nil, 18, nil, 46, nil, nil, - 27, nil ] - -racc_action_default = [ - -18, -18, -18, -18, -18, -18, -18, -6, -7, -8, - -18, -18, -18, -18, -18, -18, -18, -1, -2, -3, - -4, -5, -18, -18, -18, -18, -18, -18, 52, -9, - -10, -11, -18, -18, -18, -18, -18, -18, -12, -18, - -15, -18, -18, -18, -14, -18, -17, -18, -16, -15, - -18, -13 ] - -racc_goto_table = [ - 1, 42, nil, nil, nil, nil, nil, nil, nil, nil, - 50, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 48 ] - -racc_goto_check = [ - 1, 9, nil, nil, nil, nil, nil, nil, nil, nil, - 9, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 1 ] - -racc_goto_pointer = [ - nil, 0, nil, nil, nil, nil, nil, nil, nil, -39, - nil ] - -racc_goto_default = [ - nil, 45, 2, 3, 4, 5, 6, 7, 8, nil, - 44 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 2, 16, :_reduce_1, - 2, 16, :_reduce_2, - 2, 16, :_reduce_3, - 2, 16, :_reduce_4, - 2, 16, :_reduce_5, - 1, 16, :_reduce_6, - 1, 16, :_reduce_7, - 1, 17, :_reduce_8, - 3, 18, :_reduce_9, - 3, 19, :_reduce_10, - 3, 20, :_reduce_11, - 5, 21, :_reduce_12, - 11, 23, :_reduce_13, - 2, 24, :_reduce_14, - 0, 24, :_reduce_15, - 2, 25, :_reduce_16, - 7, 22, :_reduce_17 ] - -racc_reduce_n = 18 - -racc_shift_n = 52 - -racc_token_table = { - false => 0, - :error => 1, - ";" => 2, - "N" => 3, - "b" => 4, - ":" => 5, - :NUMBER => 6, - "i" => 7, - "d" => 8, - "s" => 9, - :STRING => 10, - "O" => 11, - "{" => 12, - "}" => 13, - "a" => 14 } - -racc_nt_base = 15 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "\";\"", - "\"N\"", - "\"b\"", - "\":\"", - "NUMBER", - "\"i\"", - "\"d\"", - "\"s\"", - "STRING", - "\"O\"", - "\"{\"", - "\"}\"", - "\"a\"", - "$start", - "data", - "null", - "bool", - "integer", - "double", - "string", - "assoc_array", - "object", - "attribute_list", - "attribute" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'php_serialization.y', 6) - def _reduce_1(val, _values, result) - @object = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 7) - def _reduce_2(val, _values, result) - @object = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 8) - def _reduce_3(val, _values, result) - @object = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 9) - def _reduce_4(val, _values, result) - @object = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 10) - def _reduce_5(val, _values, result) - @object = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 11) - def _reduce_6(val, _values, result) - @object = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 12) - def _reduce_7(val, _values, result) - @object = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 15) - def _reduce_8(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 18) - def _reduce_9(val, _values, result) - result = Integer(val[2]) > 0 - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 21) - def _reduce_10(val, _values, result) - result = Integer(val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 24) - def _reduce_11(val, _values, result) - result = Float(val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 27) - def _reduce_12(val, _values, result) - result = val[4] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 32) - def _reduce_13(val, _values, result) - if eval("defined?(#{val[4]})") - result = Object.const_get(val[4]).new - - val[9].each do |(attr_name, value)| - # Protected and private attributes will have a \0..\0 prefix - attr_name = attr_name.gsub(/\A\\0[^\\]+\\0/, '') - result.instance_variable_set("@#{attr_name}", value) - end - else - klass_name = val[4].gsub(/^Struct::/, '') - attr_names, values = [], [] - - val[9].each do |(attr_name, value)| - # Protected and private attributes will have a \0..\0 prefix - attr_names << attr_name.gsub(/\A\\0[^\\]+\\0/, '') - values << value - end - - result = Struct.new(klass_name, *attr_names).new(*values) - result.instance_variable_set("@_php_class", klass_name) - end - - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 56) - def _reduce_14(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 57) - def _reduce_15(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 60) - def _reduce_16(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'php_serialization.y', 65) - def _reduce_17(val, _values, result) - # Checks if the keys are a sequence of integers - idx = -1 - arr = val[5].all? { |(k,v)| k == (idx += 1) } - - if arr - result = val[5].map { |(k,v)| v } - else - result = Hash[val[5]] - end - - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Unserializer -end # module PhpSerialization diff --git a/test/racc/regress/riml b/test/racc/regress/riml deleted file mode 100644 index 5882a431cf..0000000000 --- a/test/racc/regress/riml +++ /dev/null @@ -1,4037 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.2 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - - require File.expand_path("../lexer", __FILE__) - require File.expand_path("../nodes", __FILE__) - require File.expand_path("../errors", __FILE__) - require File.expand_path("../ast_rewriter", __FILE__) -module Riml - class Parser < Racc::Parser - -module_eval(<<'...end riml.y/module_eval...', 'riml.y', 592) - # This code will be put as-is in the parser class - - attr_accessor :ast_rewriter - attr_writer :options - - # The Parser and AST_Rewriter share this same hash of options - def options - @options ||= {} - end - - def self.ast_cache - @ast_cache - end - @ast_cache = {} - - # parses tokens or code into output nodes - def parse(object, ast_rewriter = Riml::AST_Rewriter.new, filename = nil, included = false) - if (ast = self.class.ast_cache[filename]) - else - if tokens?(object) - @tokens = object - elsif code?(object) - @lexer = Riml::Lexer.new(object, filename, true) - end - - begin - ast = do_parse - rescue Racc::ParseError => e - raise unless @lexer - if (invalid_token = @lexer.prev_token_is_keyword?) - warning = "#{invalid_token.inspect} is a keyword, and cannot " \ - "be used as a variable name" - end - error_msg = e.message - error_msg << "\nWARNING: #{warning}" if warning - error = Riml::ParseError.new(error_msg, @lexer.filename, @lexer.lineno) - raise error - end - self.class.ast_cache[filename] = ast if filename - end - @ast_rewriter ||= ast_rewriter - return ast unless @ast_rewriter - @ast_rewriter.ast = ast.dup - @ast_rewriter.options ||= options - @ast_rewriter.rewrite(filename, included) - @ast_rewriter.ast - end - - # get the next token from either the list of tokens provided, or - # the lexer getting the next token - def next_token - return @tokens.shift unless @lexer - token = @lexer.next_token - if token && @lexer.parser_info - @current_parser_info = token.pop - end - token - end - - private - - def tokens?(object) - Array === object - end - - def code?(object) - String === object - end - - def make_node(racc_val) - node = yield racc_val - node.parser_info = @current_parser_info - node - end -...end riml.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 135, 265, 60, 139, 136, 211, 417, 418, 48, 47, - 411, 211, 448, 274, 146, 56, 199, 89, 272, 60, - 273, 270, 409, 271, 37, 46, 48, 47, 37, 49, - 44, 45, 392, 412, 37, 449, 384, 60, 50, 70, - 316, 61, 386, 385, 317, 62, 63, 129, 130, 132, - 127, 128, 131, 115, 116, 117, 121, 122, 123, 118, - 119, 120, 124, 125, 126, 102, 104, 103, 109, 111, - 110, 112, 114, 113, 106, 108, 107, 133, 134, 101, - 100, 137, 171, 80, 38, 173, 37, 81, 38, 82, - 85, 83, 84, 87, 38, 105, 86, 37, 75, 76, - 153, 152, 57, 56, 88, 89, 77, 37, 90, 58, - 59, 78, 37, 46, 48, 47, 91, 49, 44, 45, - 64, 72, 73, -116, 161, 60, 50, 70, 79, 61, - 272, 37, 92, 62, 63, 271, 48, 47, -178, -178, - -178, -178, 211, 147, 211, 211, 38, 60, -43, -43, - 153, 152, 329, 409, 99, 409, 409, 38, 331, 153, - 152, -42, -42, 161, 60, 50, 70, 38, 139, 313, - 29, 313, 38, 52, 80, 54, 164, 277, 81, 277, - 82, 85, 83, 84, 87, 279, 279, 86, 149, 75, - 76, 38, 182, 57, 56, 88, 89, 77, 149, 90, - 58, 59, 78, 37, 46, 48, 47, 91, 49, 44, - 45, 64, 72, 73, -116, 164, 60, 50, 70, 79, - 61, 164, 60, 164, 62, 63, -204, 277, 149, 164, - 279, 164, -203, 305, 149, 366, 141, 164, 164, -44, - -44, 129, 130, 132, -85, -85, -85, -85, 142, -48, - -48, -116, 258, 60, 50, 70, -99, -98, 60, 50, - 70, 29, 149, 38, 52, 80, 54, 371, 149, 81, - 52, 82, 85, 83, 84, 87, 149, 139, 86, 164, - 75, 76, 164, 139, 57, 56, 88, 89, 77, 105, - 90, 58, 59, 78, 37, 46, 48, 47, 91, 49, - 44, 45, 64, 72, 73, -99, -98, 60, 50, 70, - 79, 61, -46, -46, 370, 62, 63, -175, -175, -175, - -175, 139, 129, 130, 132, -47, -47, -45, -45, 433, - 195, 432, 129, 130, 132, 127, 128, 131, 115, 116, - 117, 121, 122, 123, 118, 119, 120, 124, 125, 126, - 164, 354, 29, 211, 38, 52, 80, 54, 153, 152, - 81, 60, 82, 85, 83, 84, 87, 149, 60, 86, - 105, 75, 76, 417, 437, 57, 56, 88, 89, 77, - 105, 90, 58, 59, 78, 215, 46, 48, 47, 91, - 49, 44, 45, 64, 72, 73, -116, 216, 60, 50, - 70, 79, 61, 139, 218, 319, 62, 63, -175, -175, - -175, -175, -178, -178, -178, -178, 211, 147, 48, 47, - 211, 49, 48, 47, 262, 49, -176, -176, -176, -176, - 263, 320, 191, 192, 193, 194, 267, 129, 130, 132, - 127, 128, 131, 29, 269, 269, 52, 269, 54, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, 102, 104, 103, - 109, 111, 110, 112, 114, 113, 106, 108, 107, 133, - 134, 101, 100, 137, 323, 105, 258, 276, 294, 295, - 149, 139, 302, 305, 306, 105, 139, 105, 312, 326, - 327, 328, 333, 105, 105, 105, 342, 346, 357, 361, - 320, 258, 362, 363, 60, 129, 130, 132, 127, 128, - 131, 129, 130, 132, 127, 128, 131, 368, 129, 130, - 132, 127, 128, 131, 115, 116, 117, 121, 122, 123, - 118, 119, 120, 124, 125, 126, 102, 104, 103, 109, - 111, 110, 112, 114, 113, 106, 108, 107, 133, 134, - 101, 100, 137, 105, 80, 129, 130, 132, 81, 105, - 82, 85, 83, 84, 87, 374, 105, 86, 377, 75, - 76, 379, 380, 57, 56, 88, 89, 77, 393, 90, - 58, 59, 78, 37, 46, 48, 47, 91, 49, 44, - 45, 64, 72, 73, -116, 302, 60, 50, 70, 79, - 61, 394, 397, 105, 62, 63, 269, 258, 129, 130, - 132, 127, 128, 131, 115, 116, 117, 121, 122, 123, - 118, 119, 120, 124, 125, 126, 102, 104, 103, 109, - 111, 110, 112, 114, 113, 106, 108, 107, 133, 134, - 101, 29, 400, 38, 52, 80, 54, 401, 402, 81, - -245, 82, 85, 83, 84, 87, 105, 403, 86, 406, - 75, 76, 60, 211, 57, 56, 88, 89, 77, 211, - 90, 58, 59, 78, 37, 46, 48, 47, 91, 49, - 44, 45, 64, 72, 73, 427, 60, 60, 50, 70, - 79, 61, 430, 431, 434, 62, 63, 435, 438, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, 102, 104, 103, - 109, 111, 110, 112, 114, 113, 106, 108, 107, 133, - 134, 440, 29, 441, 38, 52, 80, 54, 442, 443, - 81, 211, 82, 85, 83, 84, 87, 105, 445, 86, - 446, 75, 76, 371, 371, 57, 56, 88, 89, 77, - 211, 90, 58, 59, 78, 37, 46, 48, 47, 91, - 49, 44, 45, 64, 72, 73, 458, 435, 60, 50, - 70, 79, 61, 462, 463, 371, 62, 63, 465, 468, - 129, 130, 132, 127, 128, 131, 115, 116, 117, 121, - 122, 123, 118, 119, 120, 124, 125, 126, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 129, - 130, 132, nil, 29, nil, 38, 52, 80, 54, nil, - nil, 81, nil, 82, 85, 83, 84, 87, 105, nil, - 86, nil, 75, 76, nil, nil, 57, 56, 88, 89, - 77, nil, 90, 58, 59, 78, 37, 46, 48, 47, - 91, 49, 44, 45, 64, 72, 73, 105, nil, 60, - 50, 70, 79, 61, nil, nil, nil, 62, 63, nil, - nil, 129, 130, 132, 127, 128, 131, 115, 116, 117, - 121, 122, 123, 118, 119, 120, 124, 125, 126, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 129, 130, 132, nil, 29, nil, 38, 52, 80, 54, - nil, nil, 81, nil, 82, 85, 83, 84, 87, 105, - nil, 86, nil, 75, 76, nil, nil, 57, 56, 88, - 89, 77, nil, 90, 58, 59, 78, 37, 46, 48, - 47, 91, 49, 44, 45, 64, 72, 73, 105, nil, - 60, 50, 70, 79, 61, nil, nil, nil, 62, 63, - 414, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 29, nil, 38, 52, nil, - 54, nil, 129, 130, 132, 127, 128, 131, 115, 116, - 117, 121, 122, 123, 118, 119, 120, 124, 125, 126, - 102, 104, 103, 109, 111, 110, 112, 114, 113, 106, - 108, 107, 133, 134, 101, 100, 137, 419, nil, nil, - nil, nil, nil, nil, nil, nil, 146, 56, nil, 89, - 105, nil, 90, nil, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, 102, 104, 103, - 109, 111, 110, 112, 114, 113, 106, 108, 107, 133, - 134, 101, 100, 137, 29, nil, nil, 52, nil, 54, - nil, 261, 146, 56, nil, 89, nil, 105, 90, nil, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, nil, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, 180, 146, 56, nil, 89, - nil, nil, 90, nil, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, -116, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, nil, - 29, nil, nil, 52, nil, 54, nil, 261, nil, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, nil, 180, 146, - 56, nil, 89, nil, 176, 90, nil, 52, nil, 54, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - nil, nil, 60, 50, 70, nil, 61, 105, nil, nil, - 62, 63, 180, 146, 56, nil, 89, nil, nil, 90, - nil, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, nil, 29, -119, nil, - 52, nil, 54, nil, nil, 129, 130, 132, 127, 128, - 131, 115, 116, 117, 121, 122, 123, 118, 119, 120, - 124, 125, 126, nil, nil, nil, 180, 146, 56, nil, - 89, 29, -119, 90, 52, nil, 54, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, 105, 61, nil, nil, nil, 62, 63, - 180, 146, 56, nil, 89, nil, nil, 90, nil, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, nil, 29, -119, nil, 52, nil, - 54, nil, nil, 129, 130, 132, 127, 128, 131, 115, - 116, 117, 121, 122, 123, 118, 119, 120, 124, 125, - 126, nil, nil, nil, 180, 146, 56, nil, 89, 29, - -119, 90, 52, nil, 54, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, 105, 61, nil, nil, nil, 62, 63, 180, 146, - 56, nil, 89, nil, nil, 90, nil, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - nil, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, nil, 29, -121, nil, 52, nil, 54, nil, - nil, 129, 130, 132, 127, 128, 131, 115, 116, 117, - 121, 122, 123, 118, 119, 120, 124, 125, 126, nil, - nil, nil, nil, 146, 56, nil, 89, 29, -119, 90, - 52, nil, 54, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, 105, - 61, nil, nil, nil, 62, 63, 180, 146, 56, nil, - 89, nil, nil, 90, nil, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - nil, 29, nil, nil, 52, nil, 54, 350, nil, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, nil, nil, nil, - 180, 146, 56, nil, 89, 29, -119, 90, 52, nil, - 54, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, 105, 61, nil, - nil, nil, 62, 63, 365, 146, 56, nil, 89, nil, - nil, 90, nil, nil, nil, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, nil, 29, - -119, nil, 52, nil, 54, nil, 129, 130, 132, 127, - 128, 131, 115, 116, 117, 121, 122, 123, 118, 119, - 120, 124, 125, 126, nil, nil, nil, 180, 146, 56, - nil, 89, nil, 29, 90, nil, 52, nil, 54, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, 105, 61, nil, nil, nil, 62, - 63, 180, 146, 56, nil, 89, nil, nil, 90, nil, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, nil, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, nil, 29, -119, nil, 52, - nil, 54, nil, nil, 129, 130, 132, 127, 128, 131, - 115, 116, 117, 121, 122, 123, 118, 119, 120, 124, - 125, 126, nil, nil, nil, nil, 146, 56, nil, 89, - 29, -119, 90, 52, nil, 54, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, 105, 61, nil, nil, nil, 62, 63, 146, - 56, nil, 89, nil, nil, 90, nil, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - -116, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, 146, 56, 29, 89, nil, 52, 90, 54, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, -116, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, 146, 56, 29, 89, nil, - 52, 90, 54, nil, nil, 167, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, 146, 56, - 29, 89, nil, 52, 90, 54, nil, nil, nil, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, nil, 61, nil, nil, nil, 62, - 63, 146, 56, 165, 89, nil, 52, 90, 54, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, 146, 56, 29, 89, nil, 52, - 90, 54, nil, nil, nil, 46, 48, 47, nil, 49, - 44, 45, 64, nil, nil, nil, nil, 60, 50, 70, - nil, 61, nil, nil, nil, 62, 63, 146, 56, 29, - 89, nil, 52, 90, 54, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, -116, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - 146, 56, 29, 89, nil, 52, 90, 54, nil, nil, - nil, 46, 48, 47, nil, 49, 44, 45, 64, nil, - nil, nil, nil, 60, 50, 70, nil, 61, nil, nil, - nil, 62, 63, 146, 56, 29, 89, nil, 52, 90, - 54, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, 146, 56, 29, 89, - nil, 52, 90, 54, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, 146, - 56, 29, 89, nil, 52, 90, 54, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - nil, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, 146, 56, 29, 89, nil, 52, 90, 54, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, nil, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, 146, 56, 29, 89, nil, - 52, 90, 54, nil, nil, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, 146, 56, - 29, 89, nil, 52, 90, 54, nil, nil, nil, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, nil, 61, nil, nil, nil, 62, - 63, 146, 56, 29, 89, nil, 52, 90, 54, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, 146, 56, 29, 89, nil, 52, - 90, 54, nil, nil, nil, 46, 48, 47, nil, 49, - 44, 45, 64, nil, nil, nil, nil, 60, 50, 70, - nil, 61, nil, nil, nil, 62, 63, 146, 56, 29, - 89, nil, 52, 90, 54, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - 146, 56, 29, 89, nil, 52, 90, 54, nil, nil, - nil, 46, 48, 47, nil, 49, 44, 45, 64, nil, - nil, nil, nil, 60, 50, 70, nil, 61, nil, nil, - nil, 62, 63, 146, 56, 29, 89, nil, 52, 90, - 54, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, 146, 56, 29, 89, - nil, 52, 90, 54, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, 146, - 56, 29, 89, nil, 52, 90, 54, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - nil, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, 146, 56, 29, 89, nil, 52, 90, 54, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, nil, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, 146, 56, 29, 89, nil, - 52, 90, 54, nil, nil, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, 146, 56, - 29, 89, nil, 52, 90, 54, nil, nil, nil, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, nil, 61, nil, nil, nil, 62, - 63, 146, 56, 29, 89, nil, 52, 90, 54, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, 146, 56, 29, 89, nil, 52, - 90, 54, nil, nil, nil, 46, 48, 47, nil, 49, - 44, 45, 64, nil, nil, nil, nil, 60, 50, 70, - nil, 61, nil, nil, nil, 62, 63, 146, 56, 29, - 89, nil, 52, 90, 54, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - 146, 56, 29, 89, nil, 52, 90, 54, nil, nil, - nil, 46, 48, 47, nil, 49, 44, 45, 64, nil, - nil, nil, nil, 60, 50, 70, nil, 61, nil, nil, - nil, 62, 63, 146, 56, 29, 89, nil, 52, 90, - 54, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, 146, 56, 29, 89, - nil, 52, 90, 54, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, 146, - 56, 29, 89, nil, 52, 90, 54, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - nil, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, 146, 56, 29, 89, nil, 52, 90, 54, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, nil, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, 146, 56, 29, 89, nil, - 52, 90, 54, nil, nil, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, 146, 56, - 29, 89, nil, 52, 90, 54, nil, nil, nil, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, nil, 61, nil, nil, nil, 62, - 63, 146, 56, 29, 89, nil, 52, 90, 54, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, 146, 56, 29, 89, nil, 52, - 90, 54, nil, nil, nil, 46, 48, 47, nil, 49, - 44, 45, 64, nil, nil, nil, nil, 60, 50, 70, - nil, 61, nil, nil, nil, 62, 63, 146, 56, 29, - 89, nil, 52, 90, 54, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - 146, 56, 29, 89, nil, 52, 90, 54, nil, nil, - nil, 46, 48, 47, nil, 49, 44, 45, 64, nil, - nil, nil, nil, 60, 50, 70, nil, 61, nil, nil, - nil, 62, 63, 146, 56, 29, 89, nil, 52, 90, - 54, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, 146, 56, 29, 89, - nil, 52, 90, 54, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, 146, - 56, 29, 89, nil, 52, 90, 54, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - nil, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, 146, 56, 29, 89, nil, 52, 90, 54, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, nil, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, 146, 56, 29, 89, nil, - 52, 90, 54, nil, nil, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, 146, 56, - 29, 89, nil, 52, 90, 54, nil, nil, nil, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, nil, 61, nil, nil, nil, 62, - 63, 146, 56, 29, 89, nil, 52, 90, 54, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, 146, 56, 29, 89, nil, 52, - 90, 54, nil, nil, nil, 46, 48, 47, nil, 49, - 44, 45, 64, nil, nil, nil, nil, 60, 50, 70, - nil, 61, nil, nil, nil, 62, 63, 146, 56, 29, - 89, nil, 52, 90, 54, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - 146, 56, 29, 89, nil, 52, 90, 54, nil, nil, - nil, 46, 48, 47, nil, 49, 44, 45, 64, nil, - nil, nil, nil, 60, 50, 70, nil, 61, nil, nil, - nil, 62, 63, 146, 56, 29, 89, nil, 52, 90, - 54, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, 146, 56, 29, 89, - nil, 52, 90, 54, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, 146, - 56, 29, 89, nil, 52, 90, 54, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - -116, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, 146, 56, 29, 89, nil, 52, 90, 288, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, nil, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, 146, 56, 29, 89, nil, - 52, 90, 54, nil, nil, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, 146, 56, - 29, 89, nil, 52, 90, 54, nil, nil, nil, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, nil, 61, nil, nil, nil, 62, - 63, 146, 56, 29, 89, nil, 52, 90, 54, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, 146, 56, 29, 89, nil, 52, - 90, 54, nil, nil, nil, 46, 48, 47, nil, 49, - 44, 45, 64, nil, nil, nil, nil, 60, 50, 70, - nil, 61, nil, nil, nil, 62, 63, 146, 56, 29, - 89, nil, 52, 90, 54, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - 146, 56, 29, 89, nil, 52, 90, 54, nil, nil, - nil, 46, 48, 47, nil, 49, 44, 45, 64, nil, - nil, -116, nil, 60, 50, 70, nil, 61, nil, nil, - nil, 62, 63, 146, 56, 29, 89, nil, 52, 90, - 54, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, 146, 56, 29, 89, - nil, 52, 90, 54, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, 146, - 56, 29, 89, nil, 52, 90, 54, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - nil, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, nil, nil, 29, nil, nil, 52, 348, 54, - 129, 130, 132, 127, 128, 131, 115, 116, 117, 121, - 122, 123, 118, 119, 120, 124, 125, 126, nil, nil, - nil, nil, 146, 56, nil, 89, nil, 29, 90, nil, - 52, nil, 54, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, -116, nil, 60, 50, 70, 105, 61, - nil, nil, nil, 62, 63, 146, 56, nil, 89, nil, - nil, 90, nil, nil, nil, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, nil, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, 146, 56, - 29, 89, nil, 52, 90, 288, nil, nil, nil, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, nil, 61, nil, nil, nil, 62, - 63, 146, 56, 29, 89, nil, 52, 90, 54, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, 146, 56, 29, 89, nil, 52, - 90, 54, nil, nil, nil, 46, 48, 47, nil, 49, - 44, 45, 64, nil, nil, nil, nil, 60, 50, 70, - nil, 61, nil, nil, nil, 62, 63, 146, 56, 29, - 89, nil, 52, 90, 54, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - 146, 56, 29, 89, nil, 52, 90, 54, nil, nil, - nil, 46, 48, 47, nil, 49, 44, 45, 64, nil, - nil, nil, nil, 60, 50, 70, nil, 61, nil, nil, - nil, 62, 63, 146, 56, 29, 89, nil, 52, 90, - 54, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, 146, 56, 29, 89, - nil, 52, 90, 54, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, 146, - 56, 29, 89, nil, 52, 90, 54, nil, nil, nil, - 46, 48, 47, nil, 49, 44, 45, 64, nil, nil, - nil, nil, 60, 50, 70, nil, 61, nil, nil, nil, - 62, 63, 146, 56, 29, 89, nil, 52, 90, 54, - nil, nil, nil, 46, 48, 47, nil, 49, 44, 45, - 64, nil, nil, nil, nil, 60, 50, 70, nil, 61, - nil, nil, nil, 62, 63, 146, 56, 29, 89, nil, - 52, 90, 54, nil, nil, nil, 46, 48, 47, nil, - 49, 44, 45, 64, nil, nil, -116, nil, 60, 50, - 70, nil, 61, nil, nil, nil, 62, 63, 146, 56, - 29, 89, nil, 52, 90, 54, nil, nil, nil, 46, - 48, 47, nil, 49, 44, 45, 64, nil, nil, nil, - nil, 60, 50, 70, nil, 61, nil, nil, nil, 62, - 63, 146, 56, 29, 89, nil, 52, 90, 54, nil, - nil, nil, 46, 48, 47, nil, 49, 44, 45, 64, - nil, nil, nil, nil, 60, 50, 70, nil, 61, nil, - nil, nil, 62, 63, 146, 56, 29, 89, nil, 52, - 90, 54, nil, nil, nil, 46, 48, 47, nil, 49, - 44, 45, 64, nil, nil, nil, nil, 60, 50, 70, - nil, 61, nil, nil, nil, 62, 63, 146, 56, 29, - 89, nil, 52, 90, 54, nil, nil, nil, 46, 48, - 47, nil, 49, 44, 45, 64, nil, nil, nil, nil, - 60, 50, 70, nil, 61, nil, nil, nil, 62, 63, - 146, 56, 29, 89, nil, 52, nil, 54, nil, nil, - nil, 46, 48, 47, nil, 49, 44, 45, nil, nil, - nil, nil, nil, 60, 50, 70, nil, 61, nil, nil, - nil, 62, 63, 146, 56, 29, 89, nil, 52, nil, - 54, nil, nil, nil, 46, 48, 47, nil, 49, 44, - 45, 64, nil, nil, nil, nil, 60, 50, 70, nil, - 61, nil, nil, nil, 62, 63, 146, 56, 188, 89, - nil, 52, nil, nil, nil, nil, nil, 46, 48, 47, - nil, 49, 44, 45, 64, nil, nil, nil, nil, 60, - 50, 70, nil, 61, nil, nil, nil, 62, 63, nil, - nil, 188, nil, nil, 52, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 211, nil, nil, nil, nil, nil, 129, 130, 132, 127, - 128, 131, nil, nil, 188, nil, nil, 52, 129, 130, - 132, 127, 128, 131, 115, 116, 117, 121, 122, 123, - 118, 119, 120, 124, 125, 126, 102, 104, 103, 109, - 111, 110, 112, 114, 113, 106, 108, 107, 133, 134, - 101, 100, 137, 211, 105, nil, nil, nil, nil, 129, - 130, 132, 127, 128, 131, nil, 105, nil, nil, nil, - nil, 129, 130, 132, 127, 128, 131, 115, 116, 117, - 121, 122, 123, 118, 119, 120, 124, 125, 126, 102, - 104, 103, 109, 111, 110, 112, 114, 113, 106, 108, - 107, 133, 134, 101, 100, 137, 211, 105, nil, nil, - nil, nil, 129, 130, 132, 127, 128, 131, nil, 105, - nil, nil, nil, nil, 129, 130, 132, 127, 128, 131, - 115, 116, 117, 121, 122, 123, 118, 119, 120, 124, - 125, 126, 102, 104, 103, 109, 111, 110, 112, 114, - 113, 106, 108, 107, 133, 134, 101, 100, 137, 211, - 105, nil, nil, nil, nil, 129, 130, 132, 127, 128, - 131, nil, 105, nil, nil, nil, nil, 129, 130, 132, - 127, 128, 131, 115, 116, 117, 121, 122, 123, 118, - 119, 120, 124, 125, 126, 102, 104, 103, 109, 111, - 110, 112, 114, 113, 106, 108, 107, 133, 134, 101, - 100, 137, 211, 105, nil, nil, nil, nil, 129, 130, - 132, 127, 128, 131, nil, 105, nil, nil, nil, nil, - 129, 130, 132, 127, 128, 131, 115, 116, 117, 121, - 122, 123, 118, 119, 120, 124, 125, 126, 102, 104, - 103, 109, 111, 110, 112, 114, 113, 106, 108, 107, - 133, 134, 101, 100, 137, 455, 105, nil, nil, nil, - nil, 129, 130, 132, 127, 128, 131, nil, 105, nil, - nil, nil, nil, 129, 130, 132, 127, 128, 131, 115, - 116, 117, 121, 122, 123, 118, 119, 120, 124, 125, - 126, 102, 104, 103, 109, 111, 110, 112, 114, 113, - 106, 108, 107, 133, 134, 101, 100, 137, 460, 105, - nil, nil, nil, 129, 130, 132, 127, 128, 131, nil, - nil, 105, nil, nil, nil, nil, 129, 130, 132, 127, - 128, 131, 115, 116, 117, 121, 122, 123, 118, 119, - 120, 124, 125, 126, 102, 104, 103, 109, 111, 110, - 112, 114, 113, 106, 108, 107, 133, 134, 101, 100, - 137, 105, 129, 130, 132, 127, 128, 131, nil, nil, - nil, nil, nil, nil, 105, 129, 130, 132, 127, 128, - 131, 115, 116, 117, 121, 122, 123, 118, 119, 120, - 124, 125, 126, 102, 104, 103, 109, 111, 110, 112, - 114, 113, 106, 108, 107, 133, 134, 101, 100, 137, - 105, nil, nil, nil, nil, nil, 266, 129, 130, 132, - 127, 128, 131, 105, 129, 130, 132, 127, 128, 131, - 115, 116, 117, 121, 122, 123, 118, 119, 120, 124, - 125, 126, 102, 104, 103, 109, 111, 110, 112, 114, - 113, 106, 108, 107, 133, 134, 101, 100, 137, nil, - nil, nil, nil, nil, nil, 105, nil, nil, nil, nil, - nil, nil, 105, 129, 130, 132, 127, 128, 131, 115, - 116, 117, 121, 122, 123, 118, 119, 120, 124, 125, - 126, 102, 104, 103, 109, 111, 110, 112, 114, 113, - 106, 108, 107, 133, 134, 101, 100, 137, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 275, 105, 129, 130, 132, 127, 128, 131, 115, 116, - 117, 121, 122, 123, 118, 119, 120, 124, 125, 126, - 102, 104, 103, 109, 111, 110, 112, 114, 113, 106, - 108, 107, 133, 134, 101, 100, 137, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 105, 129, 130, 132, 127, 128, 131, 115, 116, 117, - 121, 122, 123, 118, 119, 120, 124, 125, 126, 102, - 104, 103, 109, 111, 110, 112, 114, 113, 106, 108, - 107, 133, 134, 101, 100, 137, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 105, - 129, 130, 132, 127, 128, 131, 115, 116, 117, 121, - 122, 123, 118, 119, 120, 124, 125, 126, 102, 104, - 103, 109, 111, 110, 112, 114, 113, 106, 108, 107, - 133, 134, 101, 100, 137, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 105, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, 102, 104, 103, - 109, 111, 110, 112, 114, 113, 106, 108, 107, 133, - 134, 101, 100, 137, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 105, 129, 130, - 132, 127, 128, 131, 115, 116, 117, 121, 122, 123, - 118, 119, 120, 124, 125, 126, 129, 130, 132, 127, - 128, 131, 115, 116, 117, 121, 122, 123, 118, 119, - 120, 124, 125, 126, 102, 104, 103, 109, 111, 110, - 112, 114, 113, 106, 108, 107, 105, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 105, 129, 130, 132, 127, 128, - 131, 115, 116, 117, 121, 122, 123, 118, 119, 120, - 124, 125, 126, 102, 104, 103, 109, 111, 110, 112, - 114, 113, 106, 108, 107, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 105, 129, 130, 132, 127, 128, 131, - 115, 116, 117, 121, 122, 123, 118, 119, 120, 124, - 125, 126, 102, 104, 103, 109, 111, 110, 112, 114, - 113, 106, 108, 107, 133, 134, 101, 100, 137, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 105, 129, 130, 132, 127, 128, 131, 115, - 116, 117, 121, 122, 123, 118, 119, 120, 124, 125, - 126, 102, 104, 103, 109, 111, 110, 112, 114, 113, - 106, 108, 107, 133, 134, 101, 100, 137, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 105, 129, 130, 132, 127, 128, 131, 115, 116, - 117, 121, 122, 123, 118, 119, 120, 124, 125, 126, - 102, 104, 103, 109, 111, 110, 112, 114, 113, 106, - 108, 107, 133, 134, 101, 100, 137, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 337, - 105, 129, 130, 132, 127, 128, 131, 115, 116, 117, - 121, 122, 123, 118, 119, 120, 124, 125, 126, 102, - 104, 103, 109, 111, 110, 112, 114, 113, 106, 108, - 107, 133, 134, 101, 100, 137, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 340, nil, nil, 341, 105, - 129, 130, 132, 127, 128, 131, 115, 116, 117, 121, - 122, 123, 118, 119, 120, 124, 125, 126, 102, 104, - 103, 109, 111, 110, 112, 114, 113, 106, 108, 107, - 133, 134, 101, 100, 137, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 105, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, 102, 104, 103, - 109, 111, 110, 112, 114, 113, 106, 108, 107, 133, - 134, 101, 100, 137, nil, nil, nil, nil, nil, nil, - 266, nil, nil, nil, nil, nil, nil, 105, 129, 130, - 132, 127, 128, 131, 115, 116, 117, 121, 122, 123, - 118, 119, 120, 124, 125, 126, 102, 104, 103, 109, - 111, 110, 112, 114, 113, 106, 108, 107, 133, 134, - 101, 100, 137, nil, nil, nil, nil, nil, nil, 360, - nil, nil, nil, nil, nil, nil, 105, 129, 130, 132, - 127, 128, 131, 115, 116, 117, 121, 122, 123, 118, - 119, 120, 124, 125, 126, 102, 104, 103, 109, 111, - 110, 112, 114, 113, 106, 108, 107, 133, 134, 101, - 100, 137, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 105, 129, 130, 132, 127, - 128, 131, 115, 116, 117, 121, 122, 123, 118, 119, - 120, 124, 125, 126, 102, 104, 103, 109, 111, 110, - 112, 114, 113, 106, 108, 107, 133, 134, 101, 100, - 137, nil, nil, nil, nil, nil, nil, 360, nil, nil, - nil, nil, nil, nil, 105, 129, 130, 132, 127, 128, - 131, 115, 116, 117, 121, 122, 123, 118, 119, 120, - 124, 125, 126, 102, 104, 103, 109, 111, 110, 112, - 114, 113, 106, 108, 107, 133, 134, 101, 100, 137, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 105, 129, 130, 132, 127, 128, 131, - 115, 116, 117, 121, 122, 123, 118, 119, 120, 124, - 125, 126, 102, 104, 103, 109, 111, 110, 112, 114, - 113, 106, 108, 107, 133, 134, 101, 100, 137, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 105, 129, 130, 132, 127, 128, 131, 115, - 116, 117, 121, 122, 123, 118, 119, 120, 124, 125, - 126, 102, 104, 103, 109, 111, 110, 112, 114, 113, - 106, 108, 107, 133, 134, 101, 100, 137, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 105, 129, 130, 132, 127, 128, 131, 115, 116, - 117, 121, 122, 123, 118, 119, 120, 124, 125, 126, - 102, 104, 103, 109, 111, 110, 112, 114, 113, 106, - 108, 107, 133, 134, 101, 100, 137, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 105, 129, 130, 132, 127, 128, 131, 115, 116, 117, - 121, 122, 123, 118, 119, 120, 124, 125, 126, 102, - 104, 103, 109, 111, 110, 112, 114, 113, 106, 108, - 107, 133, 134, 101, 100, 137, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 396, nil, nil, 341, 105, - 129, 130, 132, 127, 128, 131, 115, 116, 117, 121, - 122, 123, 118, 119, 120, 124, 125, 126, 102, 104, - 103, 109, 111, 110, 112, 114, 113, 106, 108, 107, - 133, 134, 101, 100, 137, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 105, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, 102, 104, 103, - 109, 111, 110, 112, 114, 113, 106, 108, 107, 133, - 134, 101, 100, 137, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 399, nil, nil, nil, 105, 129, 130, - 132, 127, 128, 131, 115, 116, 117, 121, 122, 123, - 118, 119, 120, 124, 125, 126, 102, 104, 103, 109, - 111, 110, 112, 114, 113, 106, 108, 107, 133, 134, - 101, 100, 137, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 105, 129, 130, 132, - 127, 128, 131, 115, 116, 117, 121, 122, 123, 118, - 119, 120, 124, 125, 126, 102, 104, 103, 109, 111, - 110, 112, 114, 113, 106, 108, 107, 133, 134, 101, - 100, 137, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 105, 129, 130, 132, 127, - 128, 131, 115, 116, 117, 121, 122, 123, 118, 119, - 120, 124, 125, 126, 102, 104, 103, 109, 111, 110, - 112, 114, 113, 106, 108, 107, 133, 134, 101, 100, - 137, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 105, 129, 130, 132, 127, 128, - 131, 115, 116, 117, 121, 122, 123, 118, 119, 120, - 124, 125, 126, 102, 104, 103, 109, 111, 110, 112, - 114, 113, 106, 108, 107, 133, 134, 101, 100, 137, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 105, 129, 130, 132, 127, 128, 131, - 115, 116, 117, 121, 122, 123, 118, 119, 120, 124, - 125, 126, 102, 104, 103, 109, 111, 110, 112, 114, - 113, 106, 108, 107, 133, 134, 101, 100, 137, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 105, 129, 130, 132, 127, 128, 131, 115, - 116, 117, 121, 122, 123, 118, 119, 120, 124, 125, - 126, 102, 104, 103, 109, 111, 110, 112, 114, 113, - 106, 108, 107, 133, 134, 101, 100, 137, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 105, 129, 130, 132, 127, 128, 131, 115, 116, - 117, 121, 122, 123, 118, 119, 120, 124, 125, 126, - 102, 104, 103, 109, 111, 110, 112, 114, 113, 106, - 108, 107, 133, 134, 101, 100, 137, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 105, 129, 130, 132, 127, 128, 131, 115, 116, 117, - 121, 122, 123, 118, 119, 120, 124, 125, 126, 102, - 104, 103, 109, 111, 110, 112, 114, 113, 106, 108, - 107, 133, 134, 101, 100, 137, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 105, - 129, 130, 132, 127, 128, 131, 115, 116, 117, 121, - 122, 123, 118, 119, 120, 124, 125, 126, 102, 104, - 103, 109, 111, 110, 112, 114, 113, 106, 108, 107, - 133, 134, 101, 100, 137, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 105, 129, - 130, 132, 127, 128, 131, 115, 116, 117, 121, 122, - 123, 118, 119, 120, 124, 125, 126, 102, 104, 103, - 109, 111, 110, 112, 114, 113, 106, 108, 107, 133, - 134, 101, 100, 137, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 105 ] - -racc_action_check = [ - 22, 143, 74, 143, 22, 333, 376, 376, 182, 182, - 370, 369, 433, 157, 57, 57, 74, 57, 155, 182, - 157, 155, 369, 155, 3, 57, 57, 57, 93, 57, - 57, 57, 333, 370, 376, 433, 330, 57, 57, 57, - 202, 57, 330, 330, 202, 57, 57, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 57, 0, 3, 57, 332, 0, 93, 0, - 0, 0, 0, 0, 376, 22, 0, 454, 0, 0, - 287, 287, 0, 0, 0, 0, 0, 461, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, - 298, 466, 1, 0, 0, 298, 59, 59, 283, 283, - 283, 283, 447, 283, 451, 464, 332, 59, 283, 283, - 40, 40, 210, 447, 19, 451, 464, 454, 210, 181, - 181, 287, 287, 175, 72, 72, 72, 461, 23, 200, - 0, 213, 0, 0, 2, 0, 55, 277, 2, 161, - 2, 2, 2, 2, 2, 162, 278, 2, 284, 2, - 2, 466, 59, 2, 2, 2, 2, 2, 286, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 175, 2, 2, 2, 2, - 2, 200, 86, 213, 2, 2, 161, 313, 266, 277, - 314, 161, 162, 304, 360, 304, 24, 162, 278, 284, - 284, 186, 186, 186, 138, 138, 138, 138, 27, 286, - 286, 8, 138, 8, 8, 8, 403, 430, 73, 73, - 73, 2, 32, 2, 2, 94, 2, 315, 35, 94, - 86, 94, 94, 94, 94, 94, 285, 266, 94, 313, - 94, 94, 314, 360, 94, 94, 94, 94, 94, 186, - 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, - 94, 94, 94, 94, 94, 403, 430, 94, 94, 94, - 94, 94, 281, 281, 315, 94, 94, 285, 285, 285, - 285, 43, 187, 187, 187, 282, 282, 285, 285, 410, - 70, 410, 222, 222, 222, 222, 222, 222, 222, 222, - 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, - 290, 290, 94, 87, 94, 94, 95, 94, 387, 387, - 95, 88, 95, 95, 95, 95, 95, 33, 89, 95, - 187, 95, 95, 416, 416, 95, 95, 95, 95, 95, - 222, 95, 95, 95, 95, 90, 95, 95, 95, 95, - 95, 95, 95, 95, 95, 95, 95, 92, 95, 95, - 95, 95, 95, 96, 97, 203, 95, 95, 33, 33, - 33, 33, 31, 31, 31, 31, 331, 31, 331, 331, - 386, 331, 386, 386, 140, 386, 42, 42, 42, 42, - 141, 203, 66, 66, 66, 66, 146, 235, 235, 235, - 235, 235, 235, 95, 148, 150, 95, 151, 95, 203, - 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, - 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, - 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, - 203, 203, 203, 203, 204, 235, 154, 160, 166, 169, - 170, 174, 178, 183, 184, 185, 189, 203, 199, 207, - 208, 209, 212, 249, 250, 252, 260, 268, 293, 297, - 204, 299, 300, 301, 305, 236, 236, 236, 236, 236, - 236, 237, 237, 237, 237, 237, 237, 312, 204, 204, - 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, - 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, - 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, - 204, 204, 204, 236, 211, 247, 247, 247, 211, 237, - 211, 211, 211, 211, 211, 318, 204, 211, 322, 211, - 211, 324, 325, 211, 211, 211, 211, 211, 334, 211, - 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 211, 211, 335, 211, 211, 211, 211, - 211, 336, 339, 247, 211, 211, 344, 345, 220, 220, - 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, - 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, - 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, - 220, 211, 353, 211, 211, 320, 211, 355, 356, 320, - 320, 320, 320, 320, 320, 320, 220, 359, 320, 367, - 320, 320, 368, 385, 320, 320, 320, 320, 320, 389, - 320, 320, 320, 320, 320, 320, 320, 320, 320, 320, - 320, 320, 320, 320, 320, 391, 392, 320, 320, 320, - 320, 320, 404, 408, 411, 320, 320, 412, 417, 221, - 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, - 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, - 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, - 221, 420, 320, 421, 320, 320, 438, 320, 422, 423, - 438, 425, 438, 438, 438, 438, 438, 221, 428, 438, - 429, 438, 438, 432, 434, 438, 438, 438, 438, 438, - 445, 438, 438, 438, 438, 438, 438, 438, 438, 438, - 438, 438, 438, 438, 438, 438, 448, 449, 438, 438, - 438, 438, 438, 456, 457, 458, 438, 438, 459, 467, - 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, - 223, 223, 223, 223, 223, 223, 223, 223, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 248, - 248, 248, nil, 438, nil, 438, 438, 455, 438, nil, - nil, 455, nil, 455, 455, 455, 455, 455, 223, nil, - 455, nil, 455, 455, nil, nil, 455, 455, 455, 455, - 455, nil, 455, 455, 455, 455, 455, 455, 455, 455, - 455, 455, 455, 455, 455, 455, 455, 248, nil, 455, - 455, 455, 455, 455, nil, nil, nil, 455, 455, nil, - nil, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 251, 251, 251, nil, 455, nil, 455, 455, 460, 455, - nil, nil, 460, nil, 460, 460, 460, 460, 460, 224, - nil, 460, nil, 460, 460, nil, nil, 460, 460, 460, - 460, 460, nil, 460, 460, 460, 460, 460, 460, 460, - 460, 460, 460, 460, 460, 460, 460, 460, 251, nil, - 460, 460, 460, 460, 460, nil, nil, nil, 460, 460, - 375, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 460, nil, 460, 460, nil, - 460, nil, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 378, nil, nil, - nil, nil, nil, nil, nil, nil, 139, 139, nil, 139, - 375, nil, 139, nil, nil, nil, nil, 139, 139, 139, - nil, 139, 139, 139, 139, nil, nil, nil, nil, 139, - 139, 139, nil, 139, nil, nil, nil, 139, 139, 378, - 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, - 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, - 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, - 378, 378, 378, 378, 139, nil, nil, 139, nil, 139, - nil, 139, 258, 258, nil, 258, nil, 378, 258, nil, - nil, nil, nil, 258, 258, 258, nil, 258, 258, 258, - 258, nil, nil, nil, nil, 258, 258, 258, nil, 258, - nil, nil, nil, 258, 258, 58, 58, 58, nil, 58, - nil, nil, 58, nil, nil, nil, nil, 58, 58, 58, - nil, 58, 58, 58, 58, nil, nil, 58, nil, 58, - 58, 58, nil, 58, nil, nil, nil, 58, 58, nil, - 258, nil, nil, 258, nil, 258, nil, 258, nil, 226, - 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, - 226, 226, 226, 226, 226, 226, 226, nil, 147, 147, - 147, nil, 147, nil, 58, 147, nil, 58, nil, 58, - 147, 147, 147, nil, 147, 147, 147, 147, nil, nil, - nil, nil, 147, 147, 147, nil, 147, 226, nil, nil, - 147, 147, 165, 165, 165, nil, 165, nil, nil, 165, - nil, nil, nil, nil, 165, 165, 165, nil, 165, 165, - 165, 165, nil, nil, nil, nil, 165, 165, 165, nil, - 165, nil, nil, nil, 165, 165, nil, 147, 147, nil, - 147, nil, 147, nil, nil, 227, 227, 227, 227, 227, - 227, 227, 227, 227, 227, 227, 227, 227, 227, 227, - 227, 227, 227, nil, nil, nil, 171, 171, 171, nil, - 171, 165, 165, 171, 165, nil, 165, nil, 171, 171, - 171, nil, 171, 171, 171, 171, nil, nil, nil, nil, - 171, 171, 171, 227, 171, nil, nil, nil, 171, 171, - 176, 176, 176, nil, 176, nil, nil, 176, nil, nil, - nil, nil, 176, 176, 176, nil, 176, 176, 176, 176, - nil, nil, nil, nil, 176, 176, 176, nil, 176, nil, - nil, nil, 176, 176, nil, 171, 171, nil, 171, nil, - 171, nil, nil, 228, 228, 228, 228, 228, 228, 228, - 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, - 228, nil, nil, nil, 215, 215, 215, nil, 215, 176, - 176, 215, 176, nil, 176, nil, 215, 215, 215, nil, - 215, 215, 215, 215, nil, nil, nil, nil, 215, 215, - 215, 228, 215, nil, nil, nil, 215, 215, 267, 267, - 267, nil, 267, nil, nil, 267, nil, nil, nil, nil, - 267, 267, 267, nil, 267, 267, 267, 267, nil, nil, - nil, nil, 267, 267, 267, nil, 267, nil, nil, nil, - 267, 267, nil, 215, 215, nil, 215, nil, 215, nil, - nil, 229, 229, 229, 229, 229, 229, 229, 229, 229, - 229, 229, 229, 229, 229, 229, 229, 229, 229, nil, - nil, nil, nil, 274, 274, nil, 274, 267, 267, 274, - 267, nil, 267, nil, 274, 274, 274, nil, 274, 274, - 274, 274, nil, nil, nil, nil, 274, 274, 274, 229, - 274, nil, nil, nil, 274, 274, 276, 276, 276, nil, - 276, nil, nil, 276, nil, nil, nil, nil, 276, 276, - 276, nil, 276, 276, 276, 276, nil, nil, nil, nil, - 276, 276, 276, nil, 276, nil, nil, nil, 276, 276, - nil, 274, nil, nil, 274, nil, 274, 274, nil, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, nil, nil, nil, - 295, 295, 295, nil, 295, 276, 276, 295, 276, nil, - 276, nil, 295, 295, 295, nil, 295, 295, 295, 295, - nil, nil, nil, nil, 295, 295, 295, 230, 295, nil, - nil, nil, 295, 295, 302, 302, 302, nil, 302, nil, - nil, 302, nil, nil, nil, nil, 302, 302, 302, nil, - 302, 302, 302, 302, nil, nil, nil, nil, 302, 302, - 302, nil, 302, nil, nil, nil, 302, 302, nil, 295, - 295, nil, 295, nil, 295, nil, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, nil, nil, nil, 362, 362, 362, - nil, 362, nil, 302, 362, nil, 302, nil, 302, 362, - 362, 362, nil, 362, 362, 362, 362, nil, nil, nil, - nil, 362, 362, 362, 231, 362, nil, nil, nil, 362, - 362, 393, 393, 393, nil, 393, nil, nil, 393, nil, - nil, nil, nil, 393, 393, 393, nil, 393, 393, 393, - 393, nil, nil, nil, nil, 393, 393, 393, nil, 393, - nil, nil, nil, 393, 393, nil, 362, 362, nil, 362, - nil, 362, nil, nil, 232, 232, 232, 232, 232, 232, - 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, - 232, 232, nil, nil, nil, nil, 29, 29, nil, 29, - 393, 393, 29, 393, nil, 393, nil, 29, 29, 29, - nil, 29, 29, 29, 29, nil, nil, nil, nil, 29, - 29, 29, 232, 29, nil, nil, nil, 29, 29, 52, - 52, nil, 52, nil, nil, 52, nil, nil, nil, nil, - 52, 52, 52, nil, 52, 52, 52, 52, nil, nil, - 52, nil, 52, 52, 52, nil, 52, nil, nil, nil, - 52, 52, 54, 54, 29, 54, nil, 29, 54, 29, - nil, nil, nil, 54, 54, 54, nil, 54, 54, 54, - 54, nil, nil, 54, nil, 54, 54, 54, nil, 54, - nil, nil, nil, 54, 54, 56, 56, 52, 56, nil, - 52, 56, 52, nil, nil, 56, 56, 56, 56, nil, - 56, 56, 56, 56, nil, nil, nil, nil, 56, 56, - 56, nil, 56, nil, nil, nil, 56, 56, 61, 61, - 54, 61, nil, 54, 61, 54, nil, nil, nil, 61, - 61, 61, nil, 61, 61, 61, 61, nil, nil, nil, - nil, 61, 61, 61, nil, 61, nil, nil, nil, 61, - 61, 62, 62, 56, 62, nil, 56, 62, 56, nil, - nil, nil, 62, 62, 62, nil, 62, 62, 62, 62, - nil, nil, nil, nil, 62, 62, 62, nil, 62, nil, - nil, nil, 62, 62, 63, 63, 61, 63, nil, 61, - 63, 61, nil, nil, nil, 63, 63, 63, nil, 63, - 63, 63, 63, nil, nil, nil, nil, 63, 63, 63, - nil, 63, nil, nil, nil, 63, 63, 78, 78, 62, - 78, nil, 62, 78, 62, nil, nil, nil, 78, 78, - 78, nil, 78, 78, 78, 78, nil, nil, 78, nil, - 78, 78, 78, nil, 78, nil, nil, nil, 78, 78, - 80, 80, 63, 80, nil, 63, 80, 63, nil, nil, - nil, 80, 80, 80, nil, 80, 80, 80, 80, nil, - nil, nil, nil, 80, 80, 80, nil, 80, nil, nil, - nil, 80, 80, 81, 81, 78, 81, nil, 78, 81, - 78, nil, nil, nil, 81, 81, 81, nil, 81, 81, - 81, 81, nil, nil, nil, nil, 81, 81, 81, nil, - 81, nil, nil, nil, 81, 81, 82, 82, 80, 82, - nil, 80, 82, 80, nil, nil, nil, 82, 82, 82, - nil, 82, 82, 82, 82, nil, nil, nil, nil, 82, - 82, 82, nil, 82, nil, nil, nil, 82, 82, 85, - 85, 81, 85, nil, 81, 85, 81, nil, nil, nil, - 85, 85, 85, nil, 85, 85, 85, 85, nil, nil, - nil, nil, 85, 85, 85, nil, 85, nil, nil, nil, - 85, 85, 100, 100, 82, 100, nil, 82, 100, 82, - nil, nil, nil, 100, 100, 100, nil, 100, 100, 100, - 100, nil, nil, nil, nil, 100, 100, 100, nil, 100, - nil, nil, nil, 100, 100, 101, 101, 85, 101, nil, - 85, 101, 85, nil, nil, nil, 101, 101, 101, nil, - 101, 101, 101, 101, nil, nil, nil, nil, 101, 101, - 101, nil, 101, nil, nil, nil, 101, 101, 102, 102, - 100, 102, nil, 100, 102, 100, nil, nil, nil, 102, - 102, 102, nil, 102, 102, 102, 102, nil, nil, nil, - nil, 102, 102, 102, nil, 102, nil, nil, nil, 102, - 102, 103, 103, 101, 103, nil, 101, 103, 101, nil, - nil, nil, 103, 103, 103, nil, 103, 103, 103, 103, - nil, nil, nil, nil, 103, 103, 103, nil, 103, nil, - nil, nil, 103, 103, 104, 104, 102, 104, nil, 102, - 104, 102, nil, nil, nil, 104, 104, 104, nil, 104, - 104, 104, 104, nil, nil, nil, nil, 104, 104, 104, - nil, 104, nil, nil, nil, 104, 104, 105, 105, 103, - 105, nil, 103, 105, 103, nil, nil, nil, 105, 105, - 105, nil, 105, 105, 105, 105, nil, nil, nil, nil, - 105, 105, 105, nil, 105, nil, nil, nil, 105, 105, - 106, 106, 104, 106, nil, 104, 106, 104, nil, nil, - nil, 106, 106, 106, nil, 106, 106, 106, 106, nil, - nil, nil, nil, 106, 106, 106, nil, 106, nil, nil, - nil, 106, 106, 107, 107, 105, 107, nil, 105, 107, - 105, nil, nil, nil, 107, 107, 107, nil, 107, 107, - 107, 107, nil, nil, nil, nil, 107, 107, 107, nil, - 107, nil, nil, nil, 107, 107, 108, 108, 106, 108, - nil, 106, 108, 106, nil, nil, nil, 108, 108, 108, - nil, 108, 108, 108, 108, nil, nil, nil, nil, 108, - 108, 108, nil, 108, nil, nil, nil, 108, 108, 109, - 109, 107, 109, nil, 107, 109, 107, nil, nil, nil, - 109, 109, 109, nil, 109, 109, 109, 109, nil, nil, - nil, nil, 109, 109, 109, nil, 109, nil, nil, nil, - 109, 109, 110, 110, 108, 110, nil, 108, 110, 108, - nil, nil, nil, 110, 110, 110, nil, 110, 110, 110, - 110, nil, nil, nil, nil, 110, 110, 110, nil, 110, - nil, nil, nil, 110, 110, 111, 111, 109, 111, nil, - 109, 111, 109, nil, nil, nil, 111, 111, 111, nil, - 111, 111, 111, 111, nil, nil, nil, nil, 111, 111, - 111, nil, 111, nil, nil, nil, 111, 111, 112, 112, - 110, 112, nil, 110, 112, 110, nil, nil, nil, 112, - 112, 112, nil, 112, 112, 112, 112, nil, nil, nil, - nil, 112, 112, 112, nil, 112, nil, nil, nil, 112, - 112, 113, 113, 111, 113, nil, 111, 113, 111, nil, - nil, nil, 113, 113, 113, nil, 113, 113, 113, 113, - nil, nil, nil, nil, 113, 113, 113, nil, 113, nil, - nil, nil, 113, 113, 114, 114, 112, 114, nil, 112, - 114, 112, nil, nil, nil, 114, 114, 114, nil, 114, - 114, 114, 114, nil, nil, nil, nil, 114, 114, 114, - nil, 114, nil, nil, nil, 114, 114, 115, 115, 113, - 115, nil, 113, 115, 113, nil, nil, nil, 115, 115, - 115, nil, 115, 115, 115, 115, nil, nil, nil, nil, - 115, 115, 115, nil, 115, nil, nil, nil, 115, 115, - 116, 116, 114, 116, nil, 114, 116, 114, nil, nil, - nil, 116, 116, 116, nil, 116, 116, 116, 116, nil, - nil, nil, nil, 116, 116, 116, nil, 116, nil, nil, - nil, 116, 116, 117, 117, 115, 117, nil, 115, 117, - 115, nil, nil, nil, 117, 117, 117, nil, 117, 117, - 117, 117, nil, nil, nil, nil, 117, 117, 117, nil, - 117, nil, nil, nil, 117, 117, 118, 118, 116, 118, - nil, 116, 118, 116, nil, nil, nil, 118, 118, 118, - nil, 118, 118, 118, 118, nil, nil, nil, nil, 118, - 118, 118, nil, 118, nil, nil, nil, 118, 118, 119, - 119, 117, 119, nil, 117, 119, 117, nil, nil, nil, - 119, 119, 119, nil, 119, 119, 119, 119, nil, nil, - nil, nil, 119, 119, 119, nil, 119, nil, nil, nil, - 119, 119, 120, 120, 118, 120, nil, 118, 120, 118, - nil, nil, nil, 120, 120, 120, nil, 120, 120, 120, - 120, nil, nil, nil, nil, 120, 120, 120, nil, 120, - nil, nil, nil, 120, 120, 121, 121, 119, 121, nil, - 119, 121, 119, nil, nil, nil, 121, 121, 121, nil, - 121, 121, 121, 121, nil, nil, nil, nil, 121, 121, - 121, nil, 121, nil, nil, nil, 121, 121, 122, 122, - 120, 122, nil, 120, 122, 120, nil, nil, nil, 122, - 122, 122, nil, 122, 122, 122, 122, nil, nil, nil, - nil, 122, 122, 122, nil, 122, nil, nil, nil, 122, - 122, 123, 123, 121, 123, nil, 121, 123, 121, nil, - nil, nil, 123, 123, 123, nil, 123, 123, 123, 123, - nil, nil, nil, nil, 123, 123, 123, nil, 123, nil, - nil, nil, 123, 123, 124, 124, 122, 124, nil, 122, - 124, 122, nil, nil, nil, 124, 124, 124, nil, 124, - 124, 124, 124, nil, nil, nil, nil, 124, 124, 124, - nil, 124, nil, nil, nil, 124, 124, 125, 125, 123, - 125, nil, 123, 125, 123, nil, nil, nil, 125, 125, - 125, nil, 125, 125, 125, 125, nil, nil, nil, nil, - 125, 125, 125, nil, 125, nil, nil, nil, 125, 125, - 126, 126, 124, 126, nil, 124, 126, 124, nil, nil, - nil, 126, 126, 126, nil, 126, 126, 126, 126, nil, - nil, nil, nil, 126, 126, 126, nil, 126, nil, nil, - nil, 126, 126, 127, 127, 125, 127, nil, 125, 127, - 125, nil, nil, nil, 127, 127, 127, nil, 127, 127, - 127, 127, nil, nil, nil, nil, 127, 127, 127, nil, - 127, nil, nil, nil, 127, 127, 128, 128, 126, 128, - nil, 126, 128, 126, nil, nil, nil, 128, 128, 128, - nil, 128, 128, 128, 128, nil, nil, nil, nil, 128, - 128, 128, nil, 128, nil, nil, nil, 128, 128, 129, - 129, 127, 129, nil, 127, 129, 127, nil, nil, nil, - 129, 129, 129, nil, 129, 129, 129, 129, nil, nil, - nil, nil, 129, 129, 129, nil, 129, nil, nil, nil, - 129, 129, 130, 130, 128, 130, nil, 128, 130, 128, - nil, nil, nil, 130, 130, 130, nil, 130, 130, 130, - 130, nil, nil, nil, nil, 130, 130, 130, nil, 130, - nil, nil, nil, 130, 130, 131, 131, 129, 131, nil, - 129, 131, 129, nil, nil, nil, 131, 131, 131, nil, - 131, 131, 131, 131, nil, nil, nil, nil, 131, 131, - 131, nil, 131, nil, nil, nil, 131, 131, 132, 132, - 130, 132, nil, 130, 132, 130, nil, nil, nil, 132, - 132, 132, nil, 132, 132, 132, 132, nil, nil, nil, - nil, 132, 132, 132, nil, 132, nil, nil, nil, 132, - 132, 133, 133, 131, 133, nil, 131, 133, 131, nil, - nil, nil, 133, 133, 133, nil, 133, 133, 133, 133, - nil, nil, nil, nil, 133, 133, 133, nil, 133, nil, - nil, nil, 133, 133, 134, 134, 132, 134, nil, 132, - 134, 132, nil, nil, nil, 134, 134, 134, nil, 134, - 134, 134, 134, nil, nil, nil, nil, 134, 134, 134, - nil, 134, nil, nil, nil, 134, 134, 135, 135, 133, - 135, nil, 133, 135, 133, nil, nil, nil, 135, 135, - 135, nil, 135, 135, 135, 135, nil, nil, nil, nil, - 135, 135, 135, nil, 135, nil, nil, nil, 135, 135, - 136, 136, 134, 136, nil, 134, 136, 134, nil, nil, - nil, 136, 136, 136, nil, 136, 136, 136, 136, nil, - nil, nil, nil, 136, 136, 136, nil, 136, nil, nil, - nil, 136, 136, 137, 137, 135, 137, nil, 135, 137, - 135, nil, nil, nil, 137, 137, 137, nil, 137, 137, - 137, 137, nil, nil, nil, nil, 137, 137, 137, nil, - 137, nil, nil, nil, 137, 137, 164, 164, 136, 164, - nil, 136, 164, 136, nil, nil, nil, 164, 164, 164, - nil, 164, 164, 164, 164, nil, nil, nil, nil, 164, - 164, 164, nil, 164, nil, nil, nil, 164, 164, 173, - 173, 137, 173, nil, 137, 173, 137, nil, nil, nil, - 173, 173, 173, nil, 173, 173, 173, 173, nil, nil, - 173, nil, 173, 173, 173, nil, 173, nil, nil, nil, - 173, 173, 180, 180, 164, 180, nil, 164, 180, 164, - nil, nil, nil, 180, 180, 180, nil, 180, 180, 180, - 180, nil, nil, nil, nil, 180, 180, 180, nil, 180, - nil, nil, nil, 180, 180, 188, 188, 173, 188, nil, - 173, 188, 173, nil, nil, nil, 188, 188, 188, nil, - 188, 188, 188, 188, nil, nil, nil, nil, 188, 188, - 188, nil, 188, nil, nil, nil, 188, 188, 191, 191, - 180, 191, nil, 180, 191, 180, nil, nil, nil, 191, - 191, 191, nil, 191, 191, 191, 191, nil, nil, nil, - nil, 191, 191, 191, nil, 191, nil, nil, nil, 191, - 191, 192, 192, 188, 192, nil, 188, 192, 188, nil, - nil, nil, 192, 192, 192, nil, 192, 192, 192, 192, - nil, nil, nil, nil, 192, 192, 192, nil, 192, nil, - nil, nil, 192, 192, 193, 193, 191, 193, nil, 191, - 193, 191, nil, nil, nil, 193, 193, 193, nil, 193, - 193, 193, 193, nil, nil, nil, nil, 193, 193, 193, - nil, 193, nil, nil, nil, 193, 193, 194, 194, 192, - 194, nil, 192, 194, 192, nil, nil, nil, 194, 194, - 194, nil, 194, 194, 194, 194, nil, nil, nil, nil, - 194, 194, 194, nil, 194, nil, nil, nil, 194, 194, - 261, 261, 193, 261, nil, 193, 261, 193, nil, nil, - nil, 261, 261, 261, nil, 261, 261, 261, 261, nil, - nil, 261, nil, 261, 261, 261, nil, 261, nil, nil, - nil, 261, 261, 270, 270, 194, 270, nil, 194, 270, - 194, nil, nil, nil, 270, 270, 270, nil, 270, 270, - 270, 270, nil, nil, nil, nil, 270, 270, 270, nil, - 270, nil, nil, nil, 270, 270, 272, 272, 261, 272, - nil, 261, 272, 261, nil, nil, nil, 272, 272, 272, - nil, 272, 272, 272, 272, nil, nil, nil, nil, 272, - 272, 272, nil, 272, nil, nil, nil, 272, 272, 275, - 275, 270, 275, nil, 270, 275, 270, nil, nil, nil, - 275, 275, 275, nil, 275, 275, 275, 275, nil, nil, - nil, nil, 275, 275, 275, nil, 275, nil, nil, nil, - 275, 275, nil, nil, 272, nil, nil, 272, 272, 272, - 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, - 233, 233, 233, 233, 233, 233, 233, 233, nil, nil, - nil, nil, 288, 288, nil, 288, nil, 275, 288, nil, - 275, nil, 275, 288, 288, 288, nil, 288, 288, 288, - 288, nil, nil, 288, nil, 288, 288, 288, 233, 288, - nil, nil, nil, 288, 288, 291, 291, nil, 291, nil, - nil, 291, nil, nil, nil, nil, 291, 291, 291, nil, - 291, 291, 291, 291, nil, nil, nil, nil, 291, 291, - 291, nil, 291, nil, nil, nil, 291, 291, 294, 294, - 288, 294, nil, 288, 294, 288, nil, nil, nil, 294, - 294, 294, nil, 294, 294, 294, 294, nil, nil, nil, - nil, 294, 294, 294, nil, 294, nil, nil, nil, 294, - 294, 316, 316, 291, 316, nil, 291, 316, 291, nil, - nil, nil, 316, 316, 316, nil, 316, 316, 316, 316, - nil, nil, nil, nil, 316, 316, 316, nil, 316, nil, - nil, nil, 316, 316, 317, 317, 294, 317, nil, 294, - 317, 294, nil, nil, nil, 317, 317, 317, nil, 317, - 317, 317, 317, nil, nil, nil, nil, 317, 317, 317, - nil, 317, nil, nil, nil, 317, 317, 319, 319, 316, - 319, nil, 316, 319, 316, nil, nil, nil, 319, 319, - 319, nil, 319, 319, 319, 319, nil, nil, nil, nil, - 319, 319, 319, nil, 319, nil, nil, nil, 319, 319, - 323, 323, 317, 323, nil, 317, 323, 317, nil, nil, - nil, 323, 323, 323, nil, 323, 323, 323, 323, nil, - nil, nil, nil, 323, 323, 323, nil, 323, nil, nil, - nil, 323, 323, 326, 326, 319, 326, nil, 319, 326, - 319, nil, nil, nil, 326, 326, 326, nil, 326, 326, - 326, 326, nil, nil, nil, nil, 326, 326, 326, nil, - 326, nil, nil, nil, 326, 326, 327, 327, 323, 327, - nil, 323, 327, 323, nil, nil, nil, 327, 327, 327, - nil, 327, 327, 327, 327, nil, nil, nil, nil, 327, - 327, 327, nil, 327, nil, nil, nil, 327, 327, 328, - 328, 326, 328, nil, 326, 328, 326, nil, nil, nil, - 328, 328, 328, nil, 328, 328, 328, 328, nil, nil, - nil, nil, 328, 328, 328, nil, 328, nil, nil, nil, - 328, 328, 337, 337, 327, 337, nil, 327, 337, 327, - nil, nil, nil, 337, 337, 337, nil, 337, 337, 337, - 337, nil, nil, nil, nil, 337, 337, 337, nil, 337, - nil, nil, nil, 337, 337, 341, 341, 328, 341, nil, - 328, 341, 328, nil, nil, nil, 341, 341, 341, nil, - 341, 341, 341, 341, nil, nil, 341, nil, 341, 341, - 341, nil, 341, nil, nil, nil, 341, 341, 365, 365, - 337, 365, nil, 337, 365, 337, nil, nil, nil, 365, - 365, 365, nil, 365, 365, 365, 365, nil, nil, nil, - nil, 365, 365, 365, nil, 365, nil, nil, nil, 365, - 365, 418, 418, 341, 418, nil, 341, 418, 341, nil, - nil, nil, 418, 418, 418, nil, 418, 418, 418, 418, - nil, nil, nil, nil, 418, 418, 418, nil, 418, nil, - nil, nil, 418, 418, 435, 435, 365, 435, nil, 365, - 435, 365, nil, nil, nil, 435, 435, 435, nil, 435, - 435, 435, 435, nil, nil, nil, nil, 435, 435, 435, - nil, 435, nil, nil, nil, 435, 435, 437, 437, 418, - 437, nil, 418, 437, 418, nil, nil, nil, 437, 437, - 437, nil, 437, 437, 437, 437, nil, nil, nil, nil, - 437, 437, 437, nil, 437, nil, nil, nil, 437, 437, - 64, 64, 435, 64, nil, 435, nil, 435, nil, nil, - nil, 64, 64, 64, nil, 64, 64, 64, nil, nil, - nil, nil, nil, 64, 64, 64, nil, 64, nil, nil, - nil, 64, 64, 99, 99, 437, 99, nil, 437, nil, - 437, nil, nil, nil, 99, 99, 99, nil, 99, 99, - 99, 99, nil, nil, nil, nil, 99, 99, 99, nil, - 99, nil, nil, nil, 99, 99, 142, 142, 64, 142, - nil, 64, nil, nil, nil, nil, nil, 142, 142, 142, - nil, 142, 142, 142, 142, nil, nil, nil, nil, 142, - 142, 142, nil, 142, nil, nil, nil, 142, 142, nil, - nil, 99, nil, nil, 99, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 205, nil, nil, nil, nil, nil, 238, 238, 238, 238, - 238, 238, nil, nil, 142, nil, nil, 142, 205, 205, - 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, - 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, - 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, - 205, 205, 205, 206, 238, nil, nil, nil, nil, 239, - 239, 239, 239, 239, 239, nil, 205, nil, nil, nil, - nil, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, 206, 206, 206, 206, 206, 381, 239, nil, nil, - nil, nil, 240, 240, 240, 240, 240, 240, nil, 206, - nil, nil, nil, nil, 381, 381, 381, 381, 381, 381, - 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, - 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, - 381, 381, 381, 381, 381, 381, 381, 381, 381, 382, - 240, nil, nil, nil, nil, 241, 241, 241, 241, 241, - 241, nil, 381, nil, nil, nil, nil, 382, 382, 382, - 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, - 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, - 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, - 382, 382, 383, 241, nil, nil, nil, nil, 242, 242, - 242, 242, 242, 242, nil, 382, nil, nil, nil, nil, - 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, - 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, - 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, - 383, 383, 383, 383, 383, 439, 242, nil, nil, nil, - nil, 243, 243, 243, 243, 243, 243, nil, 383, nil, - nil, nil, nil, 439, 439, 439, 439, 439, 439, 439, - 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, - 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, - 439, 439, 439, 439, 439, 439, 439, 439, 453, 243, - nil, nil, nil, 244, 244, 244, 244, 244, 244, nil, - nil, 439, nil, nil, nil, nil, 453, 453, 453, 453, - 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, - 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, - 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, - 453, 244, 245, 245, 245, 245, 245, 245, nil, nil, - nil, nil, nil, nil, 453, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 245, nil, nil, nil, nil, nil, 145, 246, 246, 246, - 246, 246, 246, 145, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, nil, - nil, nil, nil, nil, nil, 246, nil, nil, nil, nil, - nil, nil, 156, 159, 159, 159, 159, 159, 159, 159, - 159, 159, 159, 159, 159, 159, 159, 159, 159, 159, - 159, 159, 159, 159, 159, 159, 159, 159, 159, 159, - 159, 159, 159, 159, 159, 159, 159, 159, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 159, 159, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 168, 179, 179, 179, 179, 179, 179, 179, 179, 179, - 179, 179, 179, 179, 179, 179, 179, 179, 179, 179, - 179, 179, 179, 179, 179, 179, 179, 179, 179, 179, - 179, 179, 179, 179, 179, 179, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 179, - 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, - 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, - 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, - 201, 201, 201, 201, 201, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 201, 225, - 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, - 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, - 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, - 225, 225, 225, 225, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 225, 234, 234, - 234, 234, 234, 234, 234, 234, 234, 234, 234, 234, - 234, 234, 234, 234, 234, 234, 253, 253, 253, 253, - 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, - 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, - 253, 253, 253, 253, 253, 253, 234, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 253, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 254, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, 255, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 255, 256, 256, 256, 256, 256, 256, 256, - 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, - 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, - 256, 256, 256, 256, 256, 256, 256, 256, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 256, 257, 257, 257, 257, 257, 257, 257, 257, - 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, - 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, - 257, 257, 257, 257, 257, 257, 257, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 257, - 257, 259, 259, 259, 259, 259, 259, 259, 259, 259, - 259, 259, 259, 259, 259, 259, 259, 259, 259, 259, - 259, 259, 259, 259, 259, 259, 259, 259, 259, 259, - 259, 259, 259, 259, 259, 259, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 259, nil, nil, 259, 259, - 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, - 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, - 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, - 289, 289, 289, 289, 289, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 289, 292, - 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, - 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, - 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, - 292, 292, 292, 292, nil, nil, nil, nil, nil, nil, - 292, nil, nil, nil, nil, nil, nil, 292, 296, 296, - 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, - 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, - 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, - 296, 296, 296, nil, nil, nil, nil, nil, nil, 296, - nil, nil, nil, nil, nil, nil, 296, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 303, 307, 307, 307, 307, - 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, - 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, - 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, - 307, nil, nil, nil, nil, nil, nil, 307, nil, nil, - nil, nil, nil, nil, 307, 308, 308, 308, 308, 308, - 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, - 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, - 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 308, 309, 309, 309, 309, 309, 309, - 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, - 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, - 309, 309, 309, 309, 309, 309, 309, 309, 309, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 309, 310, 310, 310, 310, 310, 310, 310, - 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, - 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, - 310, 310, 310, 310, 310, 310, 310, 310, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 310, 311, 311, 311, 311, 311, 311, 311, 311, - 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, - 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, - 311, 311, 311, 311, 311, 311, 311, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 311, 338, 338, 338, 338, 338, 338, 338, 338, 338, - 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, - 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, - 338, 338, 338, 338, 338, 338, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 338, nil, nil, 338, 338, - 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, - 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, - 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, - 343, 343, 343, 343, 343, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 343, 347, - 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, - 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, - 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, - 347, 347, 347, 347, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 347, nil, nil, nil, 347, 349, 349, - 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, - 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, - 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, - 349, 349, 349, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 349, 352, 352, 352, - 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, - 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, - 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, - 352, 352, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 352, 358, 358, 358, 358, - 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, - 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, - 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, - 358, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 358, 364, 364, 364, 364, 364, - 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, - 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, - 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 364, 372, 372, 372, 372, 372, 372, - 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, - 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, - 372, 372, 372, 372, 372, 372, 372, 372, 372, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 372, 373, 373, 373, 373, 373, 373, 373, - 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, - 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, - 373, 373, 373, 373, 373, 373, 373, 373, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 373, 395, 395, 395, 395, 395, 395, 395, 395, - 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, - 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, - 395, 395, 395, 395, 395, 395, 395, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 395, 398, 398, 398, 398, 398, 398, 398, 398, 398, - 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, - 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, - 398, 398, 398, 398, 398, 398, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 398, - 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, - 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, - 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, - 405, 405, 405, 405, 405, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 405, 452, - 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, - 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, - 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, - 452, 452, 452, 452, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 452 ] - -racc_action_pointer = [ - 81, 132, 172, -7, nil, nil, nil, nil, 209, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 66, - nil, nil, -2, 76, 182, nil, nil, 160, nil, 1805, - nil, 328, 219, 324, nil, 225, nil, nil, nil, nil, - 117, nil, 342, 229, nil, nil, nil, nil, nil, nil, - nil, nil, 1838, nil, 1871, 82, 1904, -7, 1155, 103, - nil, 1937, 1970, 2003, 4409, nil, 348, nil, nil, nil, - 288, nil, 120, 214, -42, nil, nil, nil, 2036, nil, - 2069, 2102, 2135, nil, nil, 2168, 178, 322, 317, 324, - 296, nil, 397, -3, 263, 354, 311, 362, nil, 4442, - 2201, 2234, 2267, 2300, 2333, 2366, 2399, 2432, 2465, 2498, - 2531, 2564, 2597, 2630, 2663, 2696, 2729, 2762, 2795, 2828, - 2861, 2894, 2927, 2960, 2993, 3026, 3059, 3092, 3125, 3158, - 3191, 3224, 3257, 3290, 3323, 3356, 3389, 3422, 160, 1045, - 381, 388, 4475, -89, nil, 4886, 347, 1218, 401, nil, - 402, 404, nil, nil, 394, -70, 4935, -75, nil, 4984, - 398, 137, 143, nil, 3455, 1252, 400, nil, 5033, 400, - 447, 1316, nil, 3488, 399, 121, 1350, nil, 404, 5082, - 3521, 126, -25, 405, 452, 398, 192, 273, 3554, 404, - nil, 3587, 3620, 3653, 3686, nil, nil, nil, nil, 456, - 127, 5131, 38, 400, 479, 4519, 4572, 483, 484, 485, - 145, 562, 460, 129, nil, 1414, nil, nil, nil, nil, - 569, 660, 283, 751, 842, 5180, 1170, 1266, 1364, 1462, - 1560, 1657, 1755, 3831, 5229, 388, 466, 472, 4507, 4560, - 4613, 4666, 4719, 4772, 4824, 4873, 4928, 516, 780, 406, - 407, 871, 408, 5247, 5296, 5345, 5394, 5443, 1121, 5492, - 413, 3719, nil, nil, nil, nil, 185, 1448, 417, nil, - 3752, nil, 3785, nil, 1512, 3818, 1546, 135, 144, nil, - nil, 218, 231, 54, 145, 233, 155, 67, 3881, 5541, - 256, 3914, 5590, 418, 3947, 1610, 5639, 419, 42, 419, - 423, 423, 1644, 5688, 145, 470, nil, 5737, 5786, 5835, - 5884, 5933, 472, 185, 188, 225, 3980, 4013, 568, 4046, - 653, nil, 571, 4079, 574, 575, 4112, 4145, 4178, nil, - 29, 385, 55, -26, 499, 517, 521, 4211, 5982, 519, - nil, 4244, nil, 6031, 573, 525, nil, 6080, nil, 6129, - nil, nil, 6178, 562, nil, 562, 563, nil, 6227, 577, - 191, nil, 1707, nil, 6276, 4277, nil, 627, 628, -20, - -9, nil, 6325, 6374, nil, 973, 3, nil, 1050, nil, - nil, 4625, 4678, 4731, nil, 642, 389, 325, nil, 648, - nil, 688, 652, 1741, nil, 6423, nil, nil, 6472, nil, - nil, nil, nil, 213, 612, 6521, nil, nil, 696, nil, - 241, 614, 623, nil, nil, nil, 370, 677, 4310, nil, - 734, 736, 741, 742, nil, 720, nil, nil, 716, 670, - 214, nil, 721, -7, 722, 4343, nil, 4376, 744, 4784, - nil, nil, nil, nil, nil, 739, nil, 111, 696, 703, - nil, 113, 6570, 4837, 66, 835, 786, 787, 753, 791, - 926, 76, nil, nil, 114, nil, 100, 792, nil ] - -racc_action_default = [ - -1, -259, -2, -3, -4, -8, -9, -10, -11, -12, - -13, -14, -15, -16, -17, -18, -19, -20, -21, -22, - -23, -24, -25, -26, -27, -29, -30, -31, -32, -116, - -34, -35, -36, -37, -38, -39, -40, -49, -50, -51, - -52, -53, -54, -55, -56, -57, -58, -59, -60, -63, - -64, -65, -69, -72, -75, -259, -116, -116, -119, -116, - -115, -116, -116, -116, -116, -168, -259, -177, -179, -180, - -259, -184, -116, -116, -116, -200, -201, -202, -217, -219, - -116, -116, -116, -228, -229, -116, -116, -259, -116, -116, - -257, -258, -259, -7, -116, -6, -259, -259, -188, -116, - -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, - -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, - -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, - -116, -116, -116, -116, -116, -116, -116, -116, -83, -116, - -28, -259, -116, -26, -31, -259, -259, -116, -80, -94, - -79, -81, -61, -62, -182, -259, -70, -259, -76, -259, - -259, -183, -185, -189, -116, -116, -101, -102, -127, -35, - -37, -116, -54, -69, -259, -259, -116, -107, -120, -123, - -116, -111, -116, -109, -259, -164, -165, -166, -116, -259, - -167, -116, -116, -116, -116, -181, -186, -187, -117, -259, - -259, -218, -214, -259, -259, -259, -259, -259, -259, -259, - -237, -245, -259, -259, -255, -116, 469, -5, -183, -170, - -129, -130, -131, -132, -133, -134, -135, -136, -137, -138, - -139, -140, -141, -142, -143, -144, -145, -146, -147, -148, - -149, -150, -151, -152, -153, -154, -155, -156, -157, -158, - -159, -160, -161, -162, -163, -222, -225, -259, -116, -259, - -259, -93, -97, -96, -169, -41, -33, -116, -259, -95, - -116, -67, -116, -73, -116, -116, -116, -259, -190, -191, - -192, -29, -30, -35, -36, -37, -39, -52, -75, -259, - -259, -116, -123, -259, -116, -116, -123, -259, -259, -83, - -259, -259, -116, -124, -259, -116, -110, -259, -171, -172, - -173, -174, -259, -204, -203, -207, -116, -116, -259, -116, - -116, -246, -259, -116, -259, -259, -116, -116, -116, -234, - -259, -259, -244, -259, -105, -122, -259, -116, -259, -259, - -86, -91, -87, -92, -82, -84, -99, -259, -68, -71, - -74, -77, -78, -259, -193, -259, -259, -100, -128, -259, - -259, -103, -116, -106, -125, -116, -108, -259, -116, -259, - -208, -205, -215, -216, -220, -259, -244, -223, -259, -227, - -230, -259, -259, -259, -235, -259, -259, -243, -238, -259, - -242, -259, -116, -116, -256, -226, -88, -89, -90, -66, - -98, -194, -195, -114, -259, -126, -112, -118, -259, -206, - -259, -259, -209, -210, -221, -247, -248, -259, -116, -224, - -259, -259, -259, -259, -240, -259, -239, -253, -259, -259, - -113, -196, -207, -259, -207, -116, -249, -116, -116, -259, - -231, -232, -233, -236, -241, -259, -104, -259, -259, -211, - -212, -259, -213, -259, -250, -116, -259, -259, -207, -259, - -116, -251, -254, -197, -259, -198, -252, -259, -199 ] - -racc_goto_table = [ - 2, 154, 3, 95, 27, 169, 27, 96, 210, 98, - 390, 170, 148, 281, 155, 151, 183, 369, 413, 260, - 389, 415, 172, 318, 322, 1, 282, 217, 140, 356, - 284, 286, 209, 351, 166, 214, 97, 200, 335, 336, - 190, 207, 410, 202, 177, 330, 416, nil, nil, nil, - nil, 208, nil, nil, 154, nil, nil, nil, nil, nil, - nil, 436, nil, nil, nil, 390, nil, nil, nil, nil, - nil, 96, 96, 196, 197, 425, nil, nil, nil, nil, - nil, 450, nil, nil, nil, 175, nil, 184, nil, nil, - nil, nil, 160, 95, nil, nil, 145, nil, 27, 27, - 97, 97, 198, 219, nil, nil, 181, nil, nil, nil, - nil, nil, 283, nil, 97, nil, 212, 213, 285, 156, - nil, 159, nil, 168, nil, 179, 324, 325, 185, 186, - 187, 162, 299, 268, 447, 298, 451, 281, 339, 304, - 281, 280, nil, 291, nil, 201, 264, 203, 204, 205, - 282, 293, 206, 282, 284, 286, nil, 284, 286, nil, - 464, nil, 301, nil, nil, nil, nil, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, nil, 259, nil, nil, nil, - 184, 287, 300, 332, 179, 27, nil, nil, nil, nil, - nil, nil, nil, nil, 345, nil, nil, nil, nil, 181, - nil, 289, 292, nil, nil, nil, 283, 315, 296, 283, - 156, nil, 285, 292, nil, 285, 344, 303, nil, nil, - 334, 162, 388, nil, 391, 307, nil, 280, 308, 309, - 310, 311, 353, nil, 148, nil, 151, 291, nil, 355, - nil, nil, nil, nil, nil, nil, 314, nil, nil, nil, - nil, 359, 179, nil, nil, nil, nil, nil, nil, 314, - 408, nil, nil, 280, nil, nil, nil, nil, nil, nil, - nil, nil, 420, 421, 422, nil, 423, 424, nil, nil, - 426, nil, nil, nil, nil, nil, nil, nil, 345, nil, - nil, nil, 376, nil, 27, 338, nil, nil, 343, nil, - nil, nil, 95, 367, 179, 287, 143, 347, 287, 349, - 344, 159, 352, 179, nil, nil, 444, nil, 404, nil, - nil, nil, nil, nil, nil, 159, nil, nil, 289, nil, - nil, 358, 179, nil, 174, nil, 456, nil, 457, 364, - nil, 189, 459, nil, nil, nil, 95, nil, 387, 429, - nil, nil, nil, 372, 373, 467, 375, nil, nil, nil, - 378, nil, nil, 381, 382, 383, 407, nil, nil, nil, - nil, nil, nil, nil, 395, nil, 189, nil, 398, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 428, nil, nil, nil, nil, nil, nil, nil, nil, 179, - nil, nil, 405, 387, nil, nil, nil, nil, nil, nil, - 454, nil, 27, nil, nil, nil, nil, nil, nil, 189, - nil, nil, nil, nil, 95, nil, nil, 461, nil, 27, - 179, 95, 466, nil, 27, nil, 95, nil, nil, nil, - nil, nil, 143, nil, nil, nil, nil, nil, 143, nil, - nil, nil, nil, 143, nil, 439, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 143, nil, nil, nil, nil, - nil, nil, 452, nil, 453 ] - -racc_goto_check = [ - 2, 50, 3, 2, 28, 31, 28, 42, 70, 64, - 40, 33, 49, 26, 45, 49, 58, 69, 72, 52, - 76, 77, 41, 74, 74, 1, 27, 4, 25, 37, - 32, 35, 44, 48, 56, 57, 53, 59, 60, 61, - 62, 65, 71, 73, 55, 75, 78, nil, nil, nil, - nil, 41, nil, nil, 50, nil, nil, nil, nil, nil, - nil, 77, nil, nil, nil, 40, nil, nil, nil, nil, - nil, 42, 42, 64, 64, 76, nil, nil, nil, nil, - nil, 72, nil, nil, nil, 53, nil, 53, nil, nil, - nil, nil, 54, 2, nil, nil, 22, nil, 28, 28, - 53, 53, 53, 28, nil, nil, 38, nil, nil, nil, - nil, nil, 31, nil, 53, nil, 53, 53, 33, 22, - nil, 22, nil, 22, nil, 22, 70, 70, 22, 22, - 22, 66, 50, 55, 69, 45, 69, 26, 52, 58, - 26, 67, nil, 67, nil, 22, 28, 22, 22, 22, - 27, 55, 22, 27, 32, 35, nil, 32, 35, nil, - 69, nil, 55, nil, nil, nil, nil, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, nil, 22, nil, nil, nil, - 53, 38, 54, 3, 22, 28, nil, nil, nil, nil, - nil, nil, nil, nil, 50, nil, nil, nil, nil, 38, - nil, 22, 22, nil, nil, nil, 31, 54, 22, 31, - 22, nil, 33, 22, nil, 33, 49, 22, nil, nil, - 54, 66, 70, nil, 70, 22, nil, 67, 22, 22, - 22, 22, 55, nil, 49, nil, 49, 67, nil, 67, - nil, nil, nil, nil, nil, nil, 66, nil, nil, nil, - nil, 55, 22, nil, nil, nil, nil, nil, nil, 66, - 70, nil, nil, 67, nil, nil, nil, nil, nil, nil, - nil, nil, 70, 70, 70, nil, 70, 70, nil, nil, - 70, nil, nil, nil, nil, nil, nil, nil, 50, nil, - nil, nil, 3, nil, 28, 22, nil, nil, 22, nil, - nil, nil, 2, 53, 22, 38, 23, 22, 38, 22, - 49, 22, 22, 22, nil, nil, 70, nil, 55, nil, - nil, nil, nil, nil, nil, 22, nil, nil, 22, nil, - nil, 22, 22, nil, 23, nil, 70, nil, 70, 22, - nil, 23, 70, nil, nil, nil, 2, nil, 38, 55, - nil, nil, nil, 22, 22, 70, 22, nil, nil, nil, - 22, nil, nil, 22, 22, 22, 53, nil, nil, nil, - nil, nil, nil, nil, 22, nil, 23, nil, 22, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 53, nil, nil, nil, nil, nil, nil, nil, nil, 22, - nil, nil, 22, 38, nil, nil, nil, nil, nil, nil, - 3, nil, 28, nil, nil, nil, nil, nil, nil, 23, - nil, nil, nil, nil, 2, nil, nil, 3, nil, 28, - 22, 2, 3, nil, 28, nil, 2, nil, nil, nil, - nil, nil, 23, nil, nil, nil, nil, nil, 23, nil, - nil, nil, nil, 23, nil, 22, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 23, nil, nil, nil, nil, - nil, nil, 22, nil, 22 ] - -racc_goto_pointer = [ - nil, 25, 0, 2, -68, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 67, 307, nil, 4, -151, -138, 4, nil, - nil, -52, -134, -46, nil, -133, nil, -262, 47, nil, - -321, -35, -1, nil, -54, -38, nil, nil, -241, -20, - -42, nil, -120, 28, 37, -14, -22, -54, -43, -37, - -177, -176, -24, nil, 1, -45, 76, -21, nil, -298, - -79, -328, -352, -35, -180, -165, -311, -355, -330 ] - -racc_goto_default = [ - nil, nil, 94, 93, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, nil, 25, 26, 144, 28, - 30, 31, 32, 33, 34, 35, 36, 290, 40, 39, - 41, 42, 43, 51, 67, nil, 53, 157, 158, 150, - 138, 68, nil, 55, nil, 297, nil, nil, nil, nil, - 178, nil, 65, 66, 71, 69, 278, 163, 74, nil, - 321, nil, nil, nil, nil, nil, nil, nil, nil ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 0, 99, :_reduce_1, - 1, 99, :_reduce_2, - 1, 99, :_reduce_3, - 1, 101, :_reduce_4, - 3, 101, :_reduce_5, - 2, 101, :_reduce_6, - 2, 101, :_reduce_7, - 1, 102, :_reduce_8, - 1, 102, :_reduce_9, - 1, 102, :_reduce_10, - 1, 102, :_reduce_11, - 1, 102, :_reduce_12, - 1, 102, :_reduce_13, - 1, 102, :_reduce_14, - 1, 102, :_reduce_15, - 1, 102, :_reduce_16, - 1, 102, :_reduce_17, - 1, 102, :_reduce_18, - 1, 102, :_reduce_19, - 1, 102, :_reduce_20, - 1, 102, :_reduce_21, - 1, 102, :_reduce_22, - 1, 102, :_reduce_23, - 1, 102, :_reduce_24, - 1, 102, :_reduce_25, - 1, 120, :_reduce_26, - 1, 120, :_reduce_27, - 2, 120, :_reduce_28, - 1, 120, :_reduce_29, - 1, 120, :_reduce_30, - 1, 120, :_reduce_31, - 1, 120, :_reduce_32, - 3, 120, :_reduce_33, - 1, 121, :_reduce_34, - 1, 121, :_reduce_35, - 1, 121, :_reduce_36, - 1, 121, :_reduce_37, - 1, 121, :_reduce_38, - 1, 121, :_reduce_39, - 1, 121, :_reduce_40, - 3, 121, :_reduce_41, - 1, 135, :_reduce_42, - 1, 135, :_reduce_43, - 1, 135, :_reduce_44, - 1, 135, :_reduce_45, - 1, 135, :_reduce_46, - 1, 135, :_reduce_47, - 1, 135, :_reduce_48, - 1, 100, :_reduce_49, - 1, 100, :_reduce_50, - 1, 132, :_reduce_51, - 1, 132, :_reduce_52, - 1, 132, :_reduce_53, - 1, 132, :_reduce_54, - 1, 132, :_reduce_55, - 1, 132, :_reduce_56, - 1, 132, :_reduce_57, - 1, 137, :_reduce_58, - 1, 136, :_reduce_59, - 1, 136, :_reduce_60, - 2, 136, :_reduce_61, - 2, 136, :_reduce_62, - 1, 138, :_reduce_63, - 1, 140, :_reduce_64, - 1, 139, :_reduce_65, - 5, 142, :_reduce_66, - 3, 141, :_reduce_67, - 4, 141, :_reduce_68, - 0, 143, :_reduce_69, - 1, 143, :_reduce_70, - 3, 143, :_reduce_71, - 1, 122, :_reduce_72, - 3, 144, :_reduce_73, - 4, 144, :_reduce_74, - 0, 145, :_reduce_75, - 1, 145, :_reduce_76, - 3, 145, :_reduce_77, - 3, 146, :_reduce_78, - 2, 129, :_reduce_79, - 2, 129, :_reduce_80, - 2, 129, :_reduce_81, - 4, 129, :_reduce_82, - 2, 130, :_reduce_83, - 4, 130, :_reduce_84, - 2, 149, :_reduce_85, - 3, 148, :_reduce_86, - 3, 148, :_reduce_87, - 4, 148, :_reduce_88, - 4, 148, :_reduce_89, - 3, 150, :_reduce_90, - 2, 150, :_reduce_91, - 2, 150, :_reduce_92, - 1, 150, :_reduce_93, - 1, 147, :_reduce_94, - 2, 147, :_reduce_95, - 2, 123, :_reduce_96, - 2, 123, :_reduce_97, - 5, 133, :_reduce_98, - 4, 133, :_reduce_99, - 4, 133, :_reduce_100, - 2, 133, :_reduce_101, - 2, 133, :_reduce_102, - 4, 133, :_reduce_103, - 5, 155, :_reduce_104, - 2, 155, :_reduce_105, - 4, 115, :_reduce_106, - 2, 115, :_reduce_107, - 4, 116, :_reduce_108, - 2, 116, :_reduce_109, - 2, 156, :_reduce_110, - 1, 156, :_reduce_111, - 4, 156, :_reduce_112, - 6, 103, :_reduce_113, - 5, 103, :_reduce_114, - 1, 151, :_reduce_115, - 0, 151, :_reduce_116, - 1, 157, :_reduce_117, - 4, 157, :_reduce_118, - 0, 153, :_reduce_119, - 1, 153, :_reduce_120, - 0, 159, :_reduce_121, - 1, 159, :_reduce_122, - 1, 158, :_reduce_123, - 2, 158, :_reduce_124, - 3, 158, :_reduce_125, - 4, 158, :_reduce_126, - 1, 154, :_reduce_127, - 3, 154, :_reduce_128, - 3, 124, :_reduce_129, - 3, 124, :_reduce_130, - 3, 124, :_reduce_131, - 3, 124, :_reduce_132, - 3, 124, :_reduce_133, - 3, 124, :_reduce_134, - 3, 124, :_reduce_135, - 3, 124, :_reduce_136, - 3, 124, :_reduce_137, - 3, 124, :_reduce_138, - 3, 124, :_reduce_139, - 3, 124, :_reduce_140, - 3, 124, :_reduce_141, - 3, 124, :_reduce_142, - 3, 124, :_reduce_143, - 3, 124, :_reduce_144, - 3, 124, :_reduce_145, - 3, 124, :_reduce_146, - 3, 124, :_reduce_147, - 3, 124, :_reduce_148, - 3, 124, :_reduce_149, - 3, 124, :_reduce_150, - 3, 124, :_reduce_151, - 3, 124, :_reduce_152, - 3, 124, :_reduce_153, - 3, 124, :_reduce_154, - 3, 124, :_reduce_155, - 3, 124, :_reduce_156, - 3, 124, :_reduce_157, - 3, 124, :_reduce_158, - 3, 124, :_reduce_159, - 3, 124, :_reduce_160, - 3, 124, :_reduce_161, - 3, 124, :_reduce_162, - 3, 124, :_reduce_163, - 2, 128, :_reduce_164, - 2, 128, :_reduce_165, - 2, 128, :_reduce_166, - 2, 126, :_reduce_167, - 1, 126, :_reduce_168, - 3, 117, :_reduce_169, - 3, 117, :_reduce_170, - 3, 160, :_reduce_171, - 3, 160, :_reduce_172, - 3, 160, :_reduce_173, - 3, 160, :_reduce_174, - 1, 161, :_reduce_175, - 1, 161, :_reduce_176, - 1, 161, :_reduce_177, - 1, 161, :_reduce_178, - 1, 161, :_reduce_179, - 1, 162, :_reduce_180, - 2, 162, :_reduce_181, - 2, 162, :_reduce_182, - 2, 163, :_reduce_183, - 1, 131, :_reduce_184, - 2, 131, :_reduce_185, - 2, 106, :_reduce_186, - 2, 106, :_reduce_187, - 2, 106, :_reduce_188, - 1, 164, :_reduce_189, - 2, 164, :_reduce_190, - 2, 164, :_reduce_191, - 2, 164, :_reduce_192, - 3, 165, :_reduce_193, - 4, 165, :_reduce_194, - 4, 165, :_reduce_195, - 6, 104, :_reduce_196, - 9, 104, :_reduce_197, - 9, 104, :_reduce_198, - 11, 104, :_reduce_199, - 1, 166, :_reduce_200, - 1, 166, :_reduce_201, - 1, 166, :_reduce_202, - 1, 152, :_reduce_203, - 1, 152, :_reduce_204, - 1, 167, :_reduce_205, - 2, 167, :_reduce_206, - 0, 167, :_reduce_207, - 0, 169, :_reduce_208, - 1, 169, :_reduce_209, - 1, 169, :_reduce_210, - 3, 169, :_reduce_211, - 3, 169, :_reduce_212, - 3, 170, :_reduce_213, - 2, 105, :_reduce_214, - 4, 105, :_reduce_215, - 4, 105, :_reduce_216, - 0, 171, :_reduce_217, - 1, 171, :_reduce_218, - 1, 114, :_reduce_219, - 4, 118, :_reduce_220, - 5, 118, :_reduce_221, - 3, 118, :_reduce_222, - 4, 119, :_reduce_223, - 5, 119, :_reduce_224, - 3, 119, :_reduce_225, - 5, 125, :_reduce_226, - 4, 109, :_reduce_227, - 1, 113, :_reduce_228, - 1, 113, :_reduce_229, - 4, 110, :_reduce_230, - 6, 108, :_reduce_231, - 6, 108, :_reduce_232, - 6, 108, :_reduce_233, - 3, 111, :_reduce_234, - 4, 111, :_reduce_235, - 6, 111, :_reduce_236, - 0, 173, :_reduce_237, - 2, 173, :_reduce_238, - 3, 173, :_reduce_239, - 3, 173, :_reduce_240, - 4, 173, :_reduce_241, - 1, 174, :_reduce_242, - 1, 174, :_reduce_243, - 2, 168, :_reduce_244, - 1, 168, :_reduce_245, - 1, 172, :_reduce_246, - 3, 172, :_reduce_247, - 3, 172, :_reduce_248, - 4, 172, :_reduce_249, - 3, 175, :_reduce_250, - 4, 176, :_reduce_251, - 5, 176, :_reduce_252, - 5, 112, :_reduce_253, - 8, 112, :_reduce_254, - 2, 134, :_reduce_255, - 4, 127, :_reduce_256, - 1, 127, :_reduce_257, - 1, 107, :_reduce_258 ] - -racc_reduce_n = 259 - -racc_shift_n = 469 - -racc_token_table = { - false => 0, - :error => 1, - :IF => 2, - :ELSE => 3, - :ELSEIF => 4, - :THEN => 5, - :UNLESS => 6, - :END => 7, - :WHILE => 8, - :UNTIL => 9, - :BREAK => 10, - :CONTINUE => 11, - :TRY => 12, - :CATCH => 13, - :FINALLY => 14, - :FOR => 15, - :IN => 16, - :DEF => 17, - :DEF_BANG => 18, - :SPLAT_PARAM => 19, - :SPLAT_ARG => 20, - :CALL => 21, - :BUILTIN_COMMAND => 22, - :CLASS => 23, - :NEW => 24, - :DEFM => 25, - :DEFM_BANG => 26, - :SUPER => 27, - :RIML_FILE_COMMAND => 28, - :RIML_CLASS_COMMAND => 29, - :RETURN => 30, - :NEWLINE => 31, - :NUMBER => 32, - :STRING_D => 33, - :STRING_S => 34, - :EX_LITERAL => 35, - :REGEXP => 36, - :TRUE => 37, - :FALSE => 38, - :LET => 39, - :UNLET => 40, - :UNLET_BANG => 41, - :IDENTIFIER => 42, - :DICT_VAL => 43, - :SCOPE_MODIFIER => 44, - :SCOPE_MODIFIER_LITERAL => 45, - :SPECIAL_VAR_PREFIX => 46, - :FINISH => 47, - "!" => 48, - "*" => 49, - "/" => 50, - "%" => 51, - "+" => 52, - "-" => 53, - "." => 54, - ">" => 55, - ">#" => 56, - ">?" => 57, - "<" => 58, - "<#" => 59, - "<?" => 60, - ">=" => 61, - ">=#" => 62, - ">=?" => 63, - "<=" => 64, - "<=#" => 65, - "<=?" => 66, - "==" => 67, - "==?" => 68, - "==#" => 69, - "=~" => 70, - "=~?" => 71, - "=~#" => 72, - "!~" => 73, - "!~?" => 74, - "!~#" => 75, - "!=" => 76, - "!=?" => 77, - "!=#" => 78, - :IS => 79, - :ISNOT => 80, - "&&" => 81, - "||" => 82, - "?" => 83, - "=" => 84, - "+=" => 85, - "-=" => 86, - ".=" => 87, - "," => 88, - "(" => 89, - ")" => 90, - ";" => 91, - "[" => 92, - "]" => 93, - "{" => 94, - "}" => 95, - ":" => 96, - "===" => 97 } - -racc_nt_base = 98 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "IF", - "ELSE", - "ELSEIF", - "THEN", - "UNLESS", - "END", - "WHILE", - "UNTIL", - "BREAK", - "CONTINUE", - "TRY", - "CATCH", - "FINALLY", - "FOR", - "IN", - "DEF", - "DEF_BANG", - "SPLAT_PARAM", - "SPLAT_ARG", - "CALL", - "BUILTIN_COMMAND", - "CLASS", - "NEW", - "DEFM", - "DEFM_BANG", - "SUPER", - "RIML_FILE_COMMAND", - "RIML_CLASS_COMMAND", - "RETURN", - "NEWLINE", - "NUMBER", - "STRING_D", - "STRING_S", - "EX_LITERAL", - "REGEXP", - "TRUE", - "FALSE", - "LET", - "UNLET", - "UNLET_BANG", - "IDENTIFIER", - "DICT_VAL", - "SCOPE_MODIFIER", - "SCOPE_MODIFIER_LITERAL", - "SPECIAL_VAR_PREFIX", - "FINISH", - "\"!\"", - "\"*\"", - "\"/\"", - "\"%\"", - "\"+\"", - "\"-\"", - "\".\"", - "\">\"", - "\">#\"", - "\">?\"", - "\"<\"", - "\"<#\"", - "\"<?\"", - "\">=\"", - "\">=#\"", - "\">=?\"", - "\"<=\"", - "\"<=#\"", - "\"<=?\"", - "\"==\"", - "\"==?\"", - "\"==#\"", - "\"=~\"", - "\"=~?\"", - "\"=~#\"", - "\"!~\"", - "\"!~?\"", - "\"!~#\"", - "\"!=\"", - "\"!=?\"", - "\"!=#\"", - "IS", - "ISNOT", - "\"&&\"", - "\"||\"", - "\"?\"", - "\"=\"", - "\"+=\"", - "\"-=\"", - "\".=\"", - "\",\"", - "\"(\"", - "\")\"", - "\";\"", - "\"[\"", - "\"]\"", - "\"{\"", - "\"}\"", - "\":\"", - "\"===\"", - "$start", - "Root", - "Terminator", - "Statements", - "Statement", - "ExplicitCall", - "Def", - "Return", - "UnletVariable", - "ExLiteral", - "For", - "While", - "Until", - "Try", - "ClassDefinition", - "LoopKeyword", - "EndScript", - "RimlFileCommand", - "RimlClassCommand", - "MultiAssign", - "If", - "Unless", - "Expression", - "ExpressionWithoutDictLiteral", - "Dictionary", - "DictGetWithDotLiteral", - "BinaryOperator", - "Ternary", - "Assign", - "Super", - "UnaryOperator", - "DictGet", - "ListOrDictGet", - "AllVariableRetrieval", - "LiteralWithoutDictLiteral", - "Call", - "ObjectInstantiation", - "PossibleStringValue", - "String", - "Number", - "Regexp", - "List", - "ScopeModifierLiteral", - "ListLiteral", - "ListUnpack", - "ListItems", - "DictionaryLiteral", - "DictItems", - "DictItem", - "DictGetWithDot", - "ListOrDictGetWithBrackets", - "ListOrDictGetAssign", - "SubList", - "Scope", - "DefCallIdentifier", - "ArgList", - "ArgListWithoutNothing", - "ObjectInstantiationCall", - "ClassArgList", - "SIDAndScope", - "ArgListWithoutNothingWithSplat", - "ArgListWithSplat", - "AssignExpression", - "AssignLHS", - "VariableRetrieval", - "SimpleVariableRetrieval", - "CurlyBraceName", - "CurlyBraceVarPart", - "FunctionType", - "DefKeywords", - "Block", - "ParamList", - "DefaultParam", - "Returnable", - "IfBlock", - "Catch", - "Catchable", - "ElseBlock", - "ElseifBlock" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'riml.y', 61) - def _reduce_1(val, _values, result) - result = make_node(val) { |_| Riml::Nodes.new([]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 62) - def _reduce_2(val, _values, result) - result = make_node(val) { |_| Riml::Nodes.new([]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 63) - def _reduce_3(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 68) - def _reduce_4(val, _values, result) - result = make_node(val) { |v| Riml::Nodes.new([ v[0] ]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 69) - def _reduce_5(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 70) - def _reduce_6(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 71) - def _reduce_7(val, _values, result) - result = make_node(val) { |v| Riml::Nodes.new(v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 76) - def _reduce_8(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 77) - def _reduce_9(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 78) - def _reduce_10(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 79) - def _reduce_11(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 80) - def _reduce_12(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 81) - def _reduce_13(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 82) - def _reduce_14(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 83) - def _reduce_15(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 84) - def _reduce_16(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 85) - def _reduce_17(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 86) - def _reduce_18(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 87) - def _reduce_19(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 88) - def _reduce_20(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 89) - def _reduce_21(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 90) - def _reduce_22(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 91) - def _reduce_23(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 92) - def _reduce_24(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 93) - def _reduce_25(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 97) - def _reduce_26(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 98) - def _reduce_27(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 99) - def _reduce_28(val, _values, result) - result = make_node(val) { |v| Riml::DictGetDotNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 100) - def _reduce_29(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 101) - def _reduce_30(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 102) - def _reduce_31(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 103) - def _reduce_32(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 104) - def _reduce_33(val, _values, result) - result = make_node(val) { |v| Riml::WrapInParensNode.new(v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 108) - def _reduce_34(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 109) - def _reduce_35(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 110) - def _reduce_36(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 111) - def _reduce_37(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 112) - def _reduce_38(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 113) - def _reduce_39(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 114) - def _reduce_40(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 115) - def _reduce_41(val, _values, result) - result = make_node(val) { |v| Riml::WrapInParensNode.new(v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 120) - def _reduce_42(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 121) - def _reduce_43(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 122) - def _reduce_44(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 123) - def _reduce_45(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 124) - def _reduce_46(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 125) - def _reduce_47(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 126) - def _reduce_48(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 130) - def _reduce_49(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 131) - def _reduce_50(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 135) - def _reduce_51(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 136) - def _reduce_52(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 137) - def _reduce_53(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 138) - def _reduce_54(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 139) - def _reduce_55(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 140) - def _reduce_56(val, _values, result) - result = make_node(val) { |_| Riml::TrueNode.new } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 141) - def _reduce_57(val, _values, result) - result = make_node(val) { |_| Riml::FalseNode.new } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 145) - def _reduce_58(val, _values, result) - result = make_node(val) { |v| Riml::NumberNode.new(v[0]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 149) - def _reduce_59(val, _values, result) - result = make_node(val) { |v| Riml::StringNode.new(v[0], :s) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 150) - def _reduce_60(val, _values, result) - result = make_node(val) { |v| Riml::StringNode.new(v[0], :d) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 151) - def _reduce_61(val, _values, result) - result = make_node(val) { |v| Riml::StringLiteralConcatNode.new(v[0], Riml::StringNode.new(v[1], :s)) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 152) - def _reduce_62(val, _values, result) - result = make_node(val) { |v| Riml::StringLiteralConcatNode.new(v[0], Riml::StringNode.new(v[1], :d)) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 156) - def _reduce_63(val, _values, result) - result = make_node(val) { |v| Riml::RegexpNode.new(v[0]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 160) - def _reduce_64(val, _values, result) - result = make_node(val) { |v| Riml::ScopeModifierLiteralNode.new(v[0]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 164) - def _reduce_65(val, _values, result) - result = make_node(val) { |v| Riml::ListNode.new(v[0]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 168) - def _reduce_66(val, _values, result) - result = make_node(val) { |v| Riml::ListUnpackNode.new(v[1] << v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 172) - def _reduce_67(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 173) - def _reduce_68(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 177) - def _reduce_69(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 178) - def _reduce_70(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 179) - def _reduce_71(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 183) - def _reduce_72(val, _values, result) - result = make_node(val) { |v| Riml::DictionaryNode.new(v[0]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 190) - def _reduce_73(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 191) - def _reduce_74(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 196) - def _reduce_75(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 197) - def _reduce_76(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 198) - def _reduce_77(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 203) - def _reduce_78(val, _values, result) - result = [val[0], val[2]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 207) - def _reduce_79(val, _values, result) - result = make_node(val) { |v| Riml::DictGetDotNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 208) - def _reduce_80(val, _values, result) - result = make_node(val) { |v| Riml::DictGetDotNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 209) - def _reduce_81(val, _values, result) - result = make_node(val) { |v| Riml::DictGetDotNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 210) - def _reduce_82(val, _values, result) - result = make_node(val) { |v| Riml::DictGetDotNode.new(Riml::WrapInParensNode.new(v[1]), v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 214) - def _reduce_83(val, _values, result) - result = make_node(val) { |v| Riml::ListOrDictGetNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 215) - def _reduce_84(val, _values, result) - result = make_node(val) { |v| Riml::ListOrDictGetNode.new(Riml::WrapInParensNode.new(v[1]), v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 219) - def _reduce_85(val, _values, result) - result = make_node(val) { |v| Riml::ListOrDictGetNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 223) - def _reduce_86(val, _values, result) - result = [val[1]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 224) - def _reduce_87(val, _values, result) - result = [val[1]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 225) - def _reduce_88(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 226) - def _reduce_89(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 230) - def _reduce_90(val, _values, result) - result = make_node(val) { |v| Riml::SublistNode.new([v[0], Riml::LiteralNode.new(' : '), v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 231) - def _reduce_91(val, _values, result) - result = make_node(val) { |v| Riml::SublistNode.new([v[0], Riml::LiteralNode.new(' :')]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 232) - def _reduce_92(val, _values, result) - result = make_node(val) { |v| Riml::SublistNode.new([Riml::LiteralNode.new(': '), v[1]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 233) - def _reduce_93(val, _values, result) - result = make_node(val) { |_| Riml::SublistNode.new([Riml::LiteralNode.new(':')]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 237) - def _reduce_94(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 238) - def _reduce_95(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 242) - def _reduce_96(val, _values, result) - result = [val[1]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 243) - def _reduce_97(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 247) - def _reduce_98(val, _values, result) - result = make_node(val) { |v| Riml::CallNode.new(v[0], v[1], v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 248) - def _reduce_99(val, _values, result) - result = make_node(val) { |v| Riml::CallNode.new(nil, v[0], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 249) - def _reduce_100(val, _values, result) - result = make_node(val) { |v| Riml::CallNode.new(nil, v[0], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 250) - def _reduce_101(val, _values, result) - result = make_node(val) { |v| Riml::CallNode.new(nil, v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 251) - def _reduce_102(val, _values, result) - result = make_node(val) { |v| Riml::CallNode.new(nil, v[0], []) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 252) - def _reduce_103(val, _values, result) - result = make_node(val) { |v| Riml::ExplicitCallNode.new(nil, nil, v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 256) - def _reduce_104(val, _values, result) - result = make_node(val) { |v| Riml::CallNode.new(v[0], v[1], v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 257) - def _reduce_105(val, _values, result) - result = make_node(val) { |v| Riml::CallNode.new(v[0], v[1], []) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 261) - def _reduce_106(val, _values, result) - result = make_node(val) { |v| Riml::RimlFileCommandNode.new(nil, v[0], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 262) - def _reduce_107(val, _values, result) - result = make_node(val) { |v| Riml::RimlFileCommandNode.new(nil, v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 266) - def _reduce_108(val, _values, result) - result = make_node(val) { |v| Riml::RimlClassCommandNode.new(nil, v[0], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 267) - def _reduce_109(val, _values, result) - result = make_node(val) { |v| Riml::RimlClassCommandNode.new(nil, v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 271) - def _reduce_110(val, _values, result) - result = ["#{val[0]}#{val[1]}"] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 272) - def _reduce_111(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 273) - def _reduce_112(val, _values, result) - result = val[0].concat ["#{val[2]}#{val[3]}"] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 277) - def _reduce_113(val, _values, result) - result = make_node(val) { |v| Riml::ExplicitCallNode.new(v[1], v[2], v[4]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 278) - def _reduce_114(val, _values, result) - result = make_node(val) { |v| Riml::ExplicitCallNode.new(nil, v[1], v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 282) - def _reduce_115(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 283) - def _reduce_116(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 288) - def _reduce_117(val, _values, result) - result = [ nil, val[0] ] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 289) - def _reduce_118(val, _values, result) - result = [ make_node(val) { |v| Riml::SIDNode.new(v[1]) }, val[3] ] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 293) - def _reduce_119(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 294) - def _reduce_120(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 298) - def _reduce_121(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 299) - def _reduce_122(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 303) - def _reduce_123(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 304) - def _reduce_124(val, _values, result) - result = [ make_node(val) { |v| Riml::SplatNode.new(v[1]) } ] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 305) - def _reduce_125(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 306) - def _reduce_126(val, _values, result) - result = val[0] << make_node(val) { |v| Riml::SplatNode.new(v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 310) - def _reduce_127(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 311) - def _reduce_128(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 315) - def _reduce_129(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 316) - def _reduce_130(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 318) - def _reduce_131(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 319) - def _reduce_132(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 320) - def _reduce_133(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 323) - def _reduce_134(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 325) - def _reduce_135(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 326) - def _reduce_136(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 327) - def _reduce_137(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 329) - def _reduce_138(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 330) - def _reduce_139(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 331) - def _reduce_140(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 333) - def _reduce_141(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 334) - def _reduce_142(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 335) - def _reduce_143(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 337) - def _reduce_144(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 338) - def _reduce_145(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 339) - def _reduce_146(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 341) - def _reduce_147(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 342) - def _reduce_148(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 343) - def _reduce_149(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 345) - def _reduce_150(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 346) - def _reduce_151(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 347) - def _reduce_152(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 349) - def _reduce_153(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 350) - def _reduce_154(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 351) - def _reduce_155(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 353) - def _reduce_156(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 354) - def _reduce_157(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 355) - def _reduce_158(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 356) - def _reduce_159(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 357) - def _reduce_160(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 358) - def _reduce_161(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 360) - def _reduce_162(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 361) - def _reduce_163(val, _values, result) - result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 365) - def _reduce_164(val, _values, result) - result = make_node(val) { |v| Riml::UnaryOperatorNode.new(val[0], [val[1]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 366) - def _reduce_165(val, _values, result) - result = make_node(val) { |v| Riml::UnaryOperatorNode.new(val[0], [val[1]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 367) - def _reduce_166(val, _values, result) - result = make_node(val) { |v| Riml::UnaryOperatorNode.new(val[0], [val[1]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 372) - def _reduce_167(val, _values, result) - result = make_node(val) { |v| Riml::AssignNode.new(v[1][0], v[1][1], v[1][2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 373) - def _reduce_168(val, _values, result) - result = make_node(val) { |v| Riml::AssignNode.new(v[0][0], v[0][1], v[0][2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 377) - def _reduce_169(val, _values, result) - result = make_node(val) { |v| Riml::MultiAssignNode.new([v[0], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 378) - def _reduce_170(val, _values, result) - val[0].assigns << val[2]; result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 383) - def _reduce_171(val, _values, result) - result = [val[1], val[0], val[2]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 384) - def _reduce_172(val, _values, result) - result = [val[1], val[0], val[2]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 385) - def _reduce_173(val, _values, result) - result = [val[1], val[0], val[2]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 386) - def _reduce_174(val, _values, result) - result = [val[1], val[0], val[2]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 390) - def _reduce_175(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 391) - def _reduce_176(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 392) - def _reduce_177(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 393) - def _reduce_178(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 394) - def _reduce_179(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 399) - def _reduce_180(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 400) - def _reduce_181(val, _values, result) - result = make_node(val) { |v| Riml::GetSpecialVariableNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 401) - def _reduce_182(val, _values, result) - result = make_node(val) { |v| Riml::GetVariableByScopeAndDictNameNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 405) - def _reduce_183(val, _values, result) - result = make_node(val) { |v| Riml::GetVariableNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 409) - def _reduce_184(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 410) - def _reduce_185(val, _values, result) - result = make_node(val) { |v| Riml::GetCurlyBraceNameNode.new(v[0], v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 414) - def _reduce_186(val, _values, result) - result = make_node(val) { |v| Riml::UnletVariableNode.new('!', [ v[1] ]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 415) - def _reduce_187(val, _values, result) - result = make_node(val) { |v| Riml::UnletVariableNode.new('!', [ v[1] ]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 416) - def _reduce_188(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 420) - def _reduce_189(val, _values, result) - result = make_node(val) { |v| Riml::CurlyBraceVariable.new([ v[0] ]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 421) - def _reduce_190(val, _values, result) - result = make_node(val) { |v| Riml::CurlyBraceVariable.new([ Riml::CurlyBracePart.new(v[0]), v[1] ]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 422) - def _reduce_191(val, _values, result) - result = val[0] << make_node(val) { |v| Riml::CurlyBracePart.new(v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 423) - def _reduce_192(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 427) - def _reduce_193(val, _values, result) - result = make_node(val) { |v| Riml::CurlyBracePart.new(v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 428) - def _reduce_194(val, _values, result) - result = make_node(val) { |v| Riml::CurlyBracePart.new([v[1], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 429) - def _reduce_195(val, _values, result) - result = make_node(val) { |v| Riml::CurlyBracePart.new([v[1], v[2]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 435) - def _reduce_196(val, _values, result) - result = make_node(val) { |v| Riml.const_get(val[0]).new('!', v[1][0], v[1][1], v[2], [], v[3], v[4]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 436) - def _reduce_197(val, _values, result) - result = make_node(val) { |v| Riml.const_get(val[0]).new('!', v[1][0], v[1][1], v[2], v[4], v[6], v[7]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 437) - def _reduce_198(val, _values, result) - result = make_node(val) { |v| Riml.const_get(val[0]).new('!', v[1][0], v[1][1], v[2], [v[4]], v[6], v[7]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 438) - def _reduce_199(val, _values, result) - result = make_node(val) { |v| Riml.const_get(val[0]).new('!', v[1][0], v[1][1], v[2], v[4] << v[6], v[8], v[9]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 442) - def _reduce_200(val, _values, result) - result = "DefNode" - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 443) - def _reduce_201(val, _values, result) - result = "DefNode" - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 444) - def _reduce_202(val, _values, result) - result = "DefMethodNode" - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 449) - def _reduce_203(val, _values, result) - result = make_node(val) { |v| Riml::GetCurlyBraceNameNode.new('', v[0]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 450) - def _reduce_204(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 455) - def _reduce_205(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 456) - def _reduce_206(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 457) - def _reduce_207(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 461) - def _reduce_208(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 462) - def _reduce_209(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 463) - def _reduce_210(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 464) - def _reduce_211(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 465) - def _reduce_212(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 469) - def _reduce_213(val, _values, result) - result = make_node(val) { |v| Riml::DefaultParamNode.new(v[0], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 473) - def _reduce_214(val, _values, result) - result = make_node(val) { |v| Riml::ReturnNode.new(v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 474) - def _reduce_215(val, _values, result) - result = make_node(val) { |v| Riml::IfNode.new(v[3], Nodes.new([ReturnNode.new(v[1])])) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 475) - def _reduce_216(val, _values, result) - result = make_node(val) { |v| Riml::UnlessNode.new(v[3], Nodes.new([ReturnNode.new(v[1])])) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 479) - def _reduce_217(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 480) - def _reduce_218(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 484) - def _reduce_219(val, _values, result) - result = make_node(val) { |_| Riml::FinishNode.new } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 489) - def _reduce_220(val, _values, result) - result = make_node(val) { |v| Riml::IfNode.new(v[1], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 490) - def _reduce_221(val, _values, result) - result = make_node(val) { |v| Riml::IfNode.new(v[1], Riml::Nodes.new([v[3]])) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 491) - def _reduce_222(val, _values, result) - result = make_node(val) { |v| Riml::IfNode.new(v[2], Riml::Nodes.new([v[0]])) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 495) - def _reduce_223(val, _values, result) - result = make_node(val) { |v| Riml::UnlessNode.new(v[1], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 496) - def _reduce_224(val, _values, result) - result = make_node(val) { |v| Riml::UnlessNode.new(v[1], Riml::Nodes.new([v[3]])) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 497) - def _reduce_225(val, _values, result) - result = make_node(val) { |v| Riml::UnlessNode.new(v[2], Riml::Nodes.new([v[0]])) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 501) - def _reduce_226(val, _values, result) - result = make_node(val) { |v| Riml::TernaryOperatorNode.new([v[0], v[2], v[4]]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 505) - def _reduce_227(val, _values, result) - result = make_node(val) { |v| Riml::WhileNode.new(v[1], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 509) - def _reduce_228(val, _values, result) - result = make_node(val) { |_| Riml::BreakNode.new } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 510) - def _reduce_229(val, _values, result) - result = make_node(val) { |_| Riml::ContinueNode.new } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 514) - def _reduce_230(val, _values, result) - result = make_node(val) { |v| Riml::UntilNode.new(v[1], v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 518) - def _reduce_231(val, _values, result) - result = make_node(val) { |v| Riml::ForNode.new(v[1], v[3], v[4]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 519) - def _reduce_232(val, _values, result) - result = make_node(val) { |v| Riml::ForNode.new(v[1], v[3], v[4]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 520) - def _reduce_233(val, _values, result) - result = make_node(val) { |v| Riml::ForNode.new(v[1], v[3], v[4]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 524) - def _reduce_234(val, _values, result) - result = make_node(val) { |v| Riml::TryNode.new(v[1], nil, nil) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 525) - def _reduce_235(val, _values, result) - result = make_node(val) { |v| Riml::TryNode.new(v[1], v[2], nil) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 526) - def _reduce_236(val, _values, result) - result = make_node(val) { |v| Riml::TryNode.new(v[1], v[2], v[4]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 530) - def _reduce_237(val, _values, result) - result = nil - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 531) - def _reduce_238(val, _values, result) - result = [ make_node(val) { |v| Riml::CatchNode.new(nil, v[1]) } ] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 532) - def _reduce_239(val, _values, result) - result = [ make_node(val) { |v| Riml::CatchNode.new(v[1], v[2]) } ] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 533) - def _reduce_240(val, _values, result) - result = val[0] << make_node(val) { |v| Riml::CatchNode.new(nil, v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 534) - def _reduce_241(val, _values, result) - result = val[0] << make_node(val) { |v| Riml::CatchNode.new(v[2], v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 538) - def _reduce_242(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 539) - def _reduce_243(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 546) - def _reduce_244(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 547) - def _reduce_245(val, _values, result) - result = make_node(val) { |_| Riml::Nodes.new([]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 551) - def _reduce_246(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 552) - def _reduce_247(val, _values, result) - result = val[1] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 553) - def _reduce_248(val, _values, result) - result = val[1] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 554) - def _reduce_249(val, _values, result) - result = val[1] << val[2] << val[3] - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 558) - def _reduce_250(val, _values, result) - result = make_node(val) { |v| Riml::ElseNode.new(v[2]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 562) - def _reduce_251(val, _values, result) - result = make_node(val) { |v| Riml::Nodes.new([Riml::ElseifNode.new(v[1], v[3])]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 563) - def _reduce_252(val, _values, result) - result = val[0] << make_node(val) { |v| Riml::ElseifNode.new(v[2], v[4]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 567) - def _reduce_253(val, _values, result) - result = make_node(val) { |v| Riml::ClassDefinitionNode.new(v[1], v[2], nil, v[3]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 568) - def _reduce_254(val, _values, result) - result = make_node(val) { |v| Riml::ClassDefinitionNode.new(v[1], v[2], (v[4] || ClassDefinitionNode::DEFAULT_SCOPE_MODIFIER) + v[5], v[6]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 572) - def _reduce_255(val, _values, result) - result = make_node(val) { |v| Riml::ObjectInstantiationNode.new(v[1]) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 576) - def _reduce_256(val, _values, result) - result = make_node(val) { |v| Riml::SuperNode.new(v[2], true) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 577) - def _reduce_257(val, _values, result) - result = make_node(val) { |_| Riml::SuperNode.new([], false) } - result - end -.,., - -module_eval(<<'.,.,', 'riml.y', 581) - def _reduce_258(val, _values, result) - result = make_node(val) { |v| Riml::ExLiteralNode.new(v[0]) } - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module Riml diff --git a/test/racc/regress/ruby18 b/test/racc/regress/ruby18 deleted file mode 100644 index 9e9c55d564..0000000000 --- a/test/racc/regress/ruby18 +++ /dev/null @@ -1,9945 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.2 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - - -require 'parser' - -module Parser - class Ruby18 < Racc::Parser - -module_eval(<<'...end ruby18.y/module_eval...', 'ruby18.y', 1936) - - def version - 18 - end - - def default_encoding - Encoding::BINARY if defined? Encoding - end -...end ruby18.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - -480, 195, 196, 195, 196, 489, 814, -480, -480, -480, - 511, 578, 578, -480, -480, -80, -480, -429, 579, 579, - 489, 72, 531, -87, 558, -480, 99, 489, -86, 73, - 95, 98, 395, 195, 196, -480, -480, -82, -480, -480, - -480, -480, -480, 489, 489, 558, 495, -84, 496, -83, - -81, 463, 659, 658, 662, 661, 186, 99, 557, 558, - 291, 291, 98, -80, -480, -480, -480, -480, -480, -480, - -480, -480, -480, -480, -480, -480, -480, -480, -87, 557, - -480, -480, -480, 259, 546, 530, 722, -74, -480, -61, - 99, -480, 291, 557, 621, 98, -480, -86, -480, -85, - -480, -480, -480, -480, -480, -480, -480, -277, -480, -480, - -480, 187, -476, 510, -277, -277, -277, 99, -72, 488, - -277, -277, 98, -277, -480, -480, -79, -75, -69, -480, - -83, -78, 99, 99, 488, 621, -76, 98, 98, 99, - -74, 488, -277, -277, 98, -277, -277, -277, -277, -277, - -76, -74, -75, -73, 431, 99, 99, 488, 488, 621, - 98, 98, -477, 259, 502, 195, 196, 258, 503, -74, - 690, -277, -277, -277, -277, -277, -277, -277, -277, -277, - -277, -277, -277, -277, -277, 558, 259, -277, -277, -277, - -74, 549, 99, -74, 620, -277, 713, 98, -277, 691, - -76, 188, -77, -277, 521, -277, 521, -277, -277, -277, - -277, -277, -277, -277, -272, -277, -82, -277, -76, 557, - 189, -272, -272, -272, 99, 254, -272, -272, -272, 98, - -272, -277, -277, 99, -77, 620, -277, -85, 98, -76, - -272, -272, -76, 477, 190, -84, 476, 258, 254, -272, - -272, 768, -272, -272, -272, -272, -272, 99, 194, 620, - 477, 234, 98, 479, 521, 523, 522, 523, 522, 519, - 258, 477, 358, 282, 482, 673, 360, 359, -272, -272, - -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, - -272, -272, 521, 192, -272, -272, -272, -81, 283, -272, - 193, -79, -272, 521, -87, -272, -272, 291, -272, 191, - -272, 349, -272, 215, -272, -272, -272, -272, -272, -272, - -272, -226, -272, 361, -272, 523, 522, 524, -226, -226, - -226, 814, 394, -226, -226, -226, 521, -226, -272, -272, - -272, -272, 396, -272, -473, 212, 606, -226, 496, 214, - 213, 210, 211, 523, 522, 526, -226, -226, 397, -226, - -226, -226, -226, -226, 523, 522, 527, 251, 477, 426, - -474, 479, -480, -480, 252, -319, -226, 659, 658, 662, - 661, 428, -319, -226, -226, -226, -417, -476, -226, -226, - -226, -319, -226, -417, -417, 431, -226, 523, 522, 532, - -429, -417, -226, -226, 284, 285, -473, 436, 254, -226, - -417, -226, -226, -60, -226, -226, -226, -226, -226, 463, - -421, 451, -480, -480, 541, -477, 542, -421, -473, -480, - -480, -226, -474, 680, -476, -476, -421, -476, -480, -480, - 452, 215, 453, -72, -476, -226, -80, -226, 215, -476, - -226, -226, 391, -476, -474, 99, -480, -480, -226, 392, - 98, 99, -78, 254, -226, -86, 98, -74, 393, -76, - -82, -476, -84, 212, -428, -477, -73, 214, 213, -81, - 212, -428, -477, 459, 214, 213, -226, -477, 461, 462, - -428, -477, 195, 196, -421, -476, -476, -476, 263, -476, - -226, -421, -226, -476, -476, -226, 291, -480, -476, -477, - -476, -476, -476, -476, -476, -476, -476, 195, 196, 734, - 606, -476, -476, -476, -476, -476, -476, -476, -427, 215, - 254, -426, -425, 662, 661, -427, 464, -476, -426, -425, - -476, -476, -476, -476, -476, -476, -476, -476, -476, -476, - 465, -476, -476, -422, -476, -476, -476, -480, 734, 606, - -422, 212, 215, -423, -480, 214, 213, 210, 211, -476, - -423, 457, 471, -480, -424, 472, -476, 692, 458, -476, - -476, -424, -476, -476, 291, 481, -476, 456, -476, 484, - -476, -480, -476, 351, 516, -271, 466, 498, 500, 501, - -476, 517, -271, 467, 499, -476, -476, -476, -476, -476, - -476, -271, 393, 497, -476, -476, -477, -477, -477, 535, - -477, 536, 538, -83, -477, -477, -259, 540, 254, -477, - 215, -477, -477, -477, -477, -477, -477, -477, 215, 215, - 215, 568, -477, -477, -477, -477, -477, -477, -477, 667, - 668, 575, 669, 93, 94, 291, 580, 234, -477, 590, - 591, -477, -477, -477, -477, -477, -477, -477, -477, -477, - -477, -69, -477, -477, 592, -477, -477, -477, 215, 219, - 224, 225, 226, 221, 223, 231, 232, 227, 228, 507, - -497, -497, -278, 469, 229, 230, 505, -477, 549, -278, - -477, -477, 606, -477, -477, 506, 291, -477, -278, -477, - 212, -477, 218, -477, 214, 213, 210, 211, 222, 220, - 216, -477, 217, 616, 496, 624, -477, -477, -477, -477, - -477, -477, 672, -278, 675, -477, -477, 62, 63, 64, - -278, 51, 436, 436, -85, 56, 57, 693, 704, -278, - 60, 431, 58, 59, 61, 23, 24, 65, 66, 431, - 243, 707, 708, 22, 28, 27, 88, 87, 89, 90, - 715, 717, 17, 721, 254, 254, 215, 537, 215, 41, - 724, -259, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, 728, 80, 81, 730, 38, 39, 37, 215, - 219, 224, 225, 226, 221, 223, 231, 232, 227, 228, - -277, 208, 209, -279, 606, 229, 230, -277, 200, 738, - -279, 204, -477, 739, 52, 53, -277, 740, 54, -279, - 743, 212, 745, 218, 40, 214, 213, 210, 211, 222, - 220, 216, 18, 217, 749, 753, 755, 79, 72, 74, - 75, 76, 77, 758, 759, 760, 73, 78, 761, 99, - 233, 763, -215, -277, 98, 62, 63, 64, 7, 51, - -277, -260, 769, 56, 57, -477, 777, 778, 60, -277, - 58, 59, 61, 23, 24, 65, 66, 568, 568, 254, - 254, 22, 28, 27, 88, 87, 89, 90, 234, 568, - 17, 101, 102, 103, 104, 105, 6, 41, 8, 9, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - 790, 80, 81, 791, 38, 39, 37, 215, 219, 224, - 225, 226, 221, 223, 231, 232, 227, 228, -428, -497, - -497, 823, 792, 229, 230, -428, 36, 797, 824, 30, - 799, 805, 52, 53, -428, 807, 54, 822, 32, 212, - 291, 218, 40, 214, 213, 210, 211, 222, 220, 216, - 18, 217, 818, 825, 826, 79, 72, 74, 75, 76, - 77, 827, -271, 829, 73, 78, 62, 63, 64, -271, - 51, 830, 351, -278, 56, 57, 832, 835, -271, 60, - -278, 58, 59, 61, 246, 247, 65, 66, 839, -278, - 840, 846, 245, 275, 279, 88, 87, 89, 90, 101, - 102, 103, 104, 105, 847, 848, 758, 758, 276, 759, - 861, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, 568, 80, 81, 215, 568, 655, 280, 653, 652, - 651, 654, -277, 471, 874, -279, 875, 876, 880, -277, - 229, 230, -279, 883, -477, 758, 885, 772, -277, 886, - 204, -279, 568, 52, 53, 568, 212, 54, 218, 568, - 214, 213, 210, 211, 645, nil, 216, nil, 217, nil, - nil, nil, 659, 658, 662, 661, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, nil, 62, 63, - 64, 775, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, 101, 102, 103, 104, 105, nil, nil, 537, nil, - 276, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, nil, nil, 280, - 215, 219, 224, 225, 226, 221, 223, 231, 232, 227, - 228, nil, 208, 209, nil, nil, 229, 230, nil, 772, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, 212, nil, 218, nil, 214, 213, 210, 211, - 222, 220, 216, nil, 217, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, nil, - nil, 233, nil, 855, 5, 62, 63, 64, 7, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - 17, nil, nil, nil, nil, nil, 6, 41, 8, 9, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 36, nil, nil, 30, - nil, nil, 52, 53, nil, nil, 54, nil, 32, nil, - nil, nil, 40, 655, nil, 653, 652, 651, 654, nil, - 18, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 5, 62, 63, 64, - 7, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, 659, - 658, 662, 661, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, 6, 41, - 8, 9, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 36, nil, - nil, 265, nil, nil, 52, 53, nil, nil, 54, nil, - 32, nil, nil, nil, 40, 655, nil, 653, 652, 651, - 654, nil, 18, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 5, 62, - 63, 64, 7, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, 659, 658, 662, 661, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - 6, 41, 8, 9, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 36, nil, nil, 30, nil, nil, 52, 53, nil, nil, - 54, nil, 32, nil, nil, nil, 40, 655, nil, 653, - 652, 651, 654, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 5, 62, 63, 64, 7, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, 645, 58, 59, 61, 23, - 24, 65, 66, 659, 658, 662, 661, 22, 28, 27, - 88, 87, 89, 90, nil, nil, 17, nil, nil, nil, - nil, nil, 6, 41, 8, 9, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, 215, -497, -497, -497, -497, 221, 223, - nil, nil, -497, -497, nil, nil, nil, nil, nil, 229, - 230, nil, 36, nil, nil, 30, nil, nil, 52, 53, - nil, nil, 54, nil, 32, 212, nil, 218, 40, 214, - 213, 210, 211, 222, 220, 216, 18, 217, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 5, 62, 63, 64, 7, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 23, 24, 65, 66, nil, nil, nil, nil, 22, - 28, 27, 88, 87, 89, 90, nil, nil, 17, nil, - nil, nil, nil, nil, 6, 41, 8, 9, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, 215, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 229, 230, nil, 36, nil, nil, 30, nil, nil, - 52, 53, nil, nil, 54, nil, 32, 212, nil, 218, - 40, 214, 213, 210, 211, nil, nil, 216, 18, 217, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 5, 62, 63, 64, 7, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - 17, nil, nil, nil, nil, nil, 6, 41, 8, 9, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, 215, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 229, 230, nil, 36, nil, nil, 30, - nil, nil, 52, 53, nil, nil, 54, nil, 32, 212, - nil, 218, 40, 214, 213, 210, 211, nil, nil, 216, - 18, 217, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 5, 62, 63, 64, - 7, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, 6, 41, - 8, 9, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, 215, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 229, 230, nil, 36, nil, - nil, 265, nil, nil, 52, 53, nil, nil, 54, nil, - 32, 212, nil, 218, 40, 214, 213, 210, 211, nil, - nil, 216, 18, 217, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 5, 62, - 63, 64, 7, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - 6, 41, 8, 9, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, 215, -497, -497, -497, -497, 221, 223, nil, nil, - -497, -497, nil, nil, nil, nil, nil, 229, 230, nil, - 36, nil, nil, 265, nil, nil, 52, 53, nil, nil, - 54, nil, 32, 212, nil, 218, 40, 214, 213, 210, - 211, 222, 220, 216, 18, 217, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 5, 62, 63, 64, 7, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 23, - 24, 65, 66, nil, nil, nil, nil, 22, 28, 27, - 88, 87, 89, 90, nil, nil, 17, nil, nil, nil, - nil, nil, 6, 41, 8, 9, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, 215, -497, -497, -497, -497, 221, 223, - nil, nil, -497, -497, nil, nil, nil, nil, nil, 229, - 230, nil, 36, nil, nil, 30, nil, nil, 52, 53, - nil, nil, 54, nil, 32, 212, nil, 218, 40, 214, - 213, 210, 211, 222, 220, 216, 18, 217, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 5, 62, 63, 64, 7, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 23, 24, 65, 66, nil, nil, nil, nil, 22, - 28, 27, 88, 87, 89, 90, nil, nil, 17, nil, - nil, nil, nil, nil, 6, 41, 8, 9, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, 215, -497, -497, -497, -497, - 221, 223, nil, nil, -497, -497, nil, nil, nil, nil, - nil, 229, 230, nil, 36, nil, nil, 30, nil, nil, - 52, 53, nil, nil, 54, nil, 32, 212, nil, 218, - 40, 214, 213, 210, 211, 222, 220, 216, 18, 217, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 5, 62, 63, 64, 7, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - 17, nil, nil, nil, nil, nil, 6, 41, 8, 9, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, 215, -497, -497, - -497, -497, 221, 223, nil, nil, -497, -497, nil, nil, - nil, nil, nil, 229, 230, nil, 36, nil, nil, 30, - nil, nil, 52, 53, nil, nil, 54, nil, 32, 212, - nil, 218, 40, 214, 213, 210, 211, 222, 220, 216, - 18, 217, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 5, 62, 63, 64, - 7, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, 6, 41, - 8, 9, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, 215, - -497, -497, -497, -497, 221, 223, nil, nil, -497, -497, - nil, nil, nil, nil, nil, 229, 230, nil, 36, nil, - nil, 30, nil, nil, 52, 53, nil, nil, 54, nil, - 32, 212, nil, 218, 40, 214, 213, 210, 211, 222, - 220, 216, 18, 217, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 5, 62, - 63, 64, 7, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - 6, 41, 8, 9, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, 215, 219, 224, 225, 226, 221, 223, nil, nil, - 227, 228, nil, nil, nil, nil, nil, 229, 230, nil, - 36, nil, nil, 30, nil, nil, 52, 53, nil, nil, - 54, nil, 32, 212, nil, 218, 40, 214, 213, 210, - 211, 222, 220, 216, 18, 217, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 5, 62, 63, 64, 7, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 23, - 24, 65, 66, nil, nil, nil, nil, 22, 28, 27, - 88, 87, 89, 90, nil, nil, 17, nil, nil, nil, - nil, nil, 6, 41, 8, 9, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, 215, 219, 224, 225, 226, 221, 223, - 231, nil, 227, 228, nil, nil, nil, nil, nil, 229, - 230, nil, 36, nil, nil, 30, nil, nil, 52, 53, - nil, nil, 54, nil, 32, 212, nil, 218, 40, 214, - 213, 210, 211, 222, 220, 216, 18, 217, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 5, 62, 63, 64, 7, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 23, 24, 65, 66, nil, nil, nil, nil, 22, - 28, 27, 88, 87, 89, 90, nil, nil, 17, nil, - nil, nil, nil, nil, 6, 41, 8, 9, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, 215, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 229, 230, nil, 36, nil, nil, 30, nil, nil, - 52, 53, nil, nil, 54, nil, 32, 212, nil, 218, - 40, 214, 213, 210, 211, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 5, 62, 63, 64, 7, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - 17, nil, nil, nil, nil, nil, 6, 41, 8, 9, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, 215, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 229, 230, nil, 36, nil, nil, 30, - nil, nil, 52, 53, nil, nil, 54, nil, 32, 212, - nil, 218, 40, 214, 213, 210, 211, nil, nil, nil, - 18, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 5, 62, 63, 64, - 7, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, 6, 41, - 8, 9, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, 215, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 229, 230, nil, 36, nil, - nil, 30, nil, nil, 52, 53, nil, nil, 54, nil, - 32, 212, nil, nil, 40, 214, 213, 210, 211, nil, - nil, nil, 18, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 5, 62, - 63, 64, 7, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - 6, 41, 8, 9, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 36, nil, nil, 30, nil, nil, 52, 53, nil, nil, - 54, nil, 32, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 5, 62, 63, 64, 7, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 23, - 24, 65, 66, nil, nil, nil, nil, 22, 28, 27, - 88, 87, 89, 90, nil, nil, 17, nil, nil, nil, - nil, nil, 6, 41, 8, 9, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 36, nil, nil, 30, nil, nil, 52, 53, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 5, 62, 63, 64, 7, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 23, 24, 65, 66, nil, nil, nil, nil, 22, - 28, 27, 88, 87, 89, 90, nil, nil, 17, nil, - nil, nil, nil, nil, 6, 41, 8, 9, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 36, nil, nil, 30, nil, nil, - 52, 53, nil, nil, 54, nil, 32, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 5, 62, 63, 64, 7, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - 17, nil, nil, nil, nil, nil, 6, 41, 8, 9, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 36, nil, nil, 30, - nil, nil, 52, 53, nil, nil, 54, nil, 32, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 18, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 5, 62, 63, 64, - 7, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, 6, 41, - 8, 9, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 36, nil, - nil, 30, nil, nil, 52, 53, nil, nil, 54, nil, - 32, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 18, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 5, 62, - 63, 64, 7, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - 6, 41, 8, 9, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 36, nil, nil, 30, nil, nil, 52, 53, nil, nil, - 54, nil, 32, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 5, 62, 63, 64, 7, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 23, - 24, 65, 66, nil, nil, nil, nil, 22, 28, 27, - 88, 87, 89, 90, nil, nil, 17, nil, nil, nil, - nil, nil, 6, 41, 8, 9, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 36, nil, nil, 30, nil, nil, 52, 53, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 5, 62, 63, 64, 7, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 23, 24, 65, 66, nil, nil, nil, nil, 22, - 28, 27, 88, 87, 89, 90, nil, nil, 17, nil, - nil, nil, nil, nil, 6, 41, 8, 9, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 36, nil, nil, 30, nil, nil, - 52, 53, nil, nil, 54, nil, 32, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 5, 62, 63, 64, 7, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - 17, nil, nil, nil, nil, nil, 6, 41, 8, 9, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 36, nil, nil, 30, - nil, nil, 52, 53, nil, nil, 54, nil, 32, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 18, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 5, 62, 63, 64, - 7, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, 6, 41, - 8, 9, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 36, nil, - nil, 30, nil, nil, 52, 53, nil, nil, 54, nil, - 32, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 18, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 5, 62, - 63, 64, 7, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - 6, 41, 8, 9, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 36, nil, nil, 30, nil, nil, 52, 53, nil, nil, - 54, nil, 32, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 5, 62, 63, 64, 7, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 23, - 24, 65, 66, nil, nil, nil, nil, 22, 28, 27, - 88, 87, 89, 90, nil, nil, 17, nil, nil, nil, - nil, nil, 6, 41, 8, 9, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 36, nil, nil, 30, nil, nil, 52, 53, - nil, nil, 54, nil, 32, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, 7, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 23, 24, 65, 66, nil, nil, nil, nil, 22, 28, - 27, 88, 87, 89, 90, nil, nil, 17, nil, nil, - nil, nil, nil, 6, 41, 8, 9, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 36, nil, nil, 30, nil, nil, 52, - 53, nil, nil, 54, nil, 32, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 153, 164, 154, 177, 150, 170, 160, - 159, 180, 181, 175, 158, 157, 152, 178, 182, 183, - 162, 151, 165, 169, 171, 163, 156, nil, nil, 172, - 179, 174, 173, 166, 176, 161, 149, 168, 167, nil, - nil, nil, nil, nil, 148, 155, 146, 147, 144, 145, - 109, 111, 108, nil, 110, nil, nil, nil, nil, nil, - nil, nil, 139, 140, nil, 137, 121, 122, 123, nil, - 126, 128, nil, nil, 124, nil, nil, nil, nil, 141, - 142, 129, 130, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 134, 133, nil, 120, - 138, 136, 135, 131, 132, 127, 125, 118, nil, 119, - nil, nil, 143, 79, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 78, 153, 164, 154, 177, 150, 170, - 160, 159, 180, 181, 175, 158, 157, 152, 178, 182, - 183, 162, 151, 165, 169, 171, 163, 156, nil, nil, - 172, 179, 174, 173, 166, 176, 161, 149, 168, 167, - nil, nil, nil, nil, nil, 148, 155, 146, 147, 144, - 145, 109, 111, nil, nil, 110, nil, nil, nil, nil, - nil, nil, nil, 139, 140, nil, 137, 121, 122, 123, - nil, 126, 128, nil, nil, 124, nil, nil, nil, nil, - 141, 142, 129, 130, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 134, 133, nil, - 120, 138, 136, 135, 131, 132, 127, 125, 118, nil, - 119, nil, nil, 143, 79, nil, nil, 62, 63, 64, - nil, 51, nil, nil, 78, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 18, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 23, 24, 65, 66, - nil, nil, nil, nil, 22, 28, 27, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 28, 27, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, 241, nil, 243, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 28, 27, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, 241, nil, 243, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 28, 27, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, 241, nil, 243, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, -249, -249, -249, nil, -249, nil, nil, nil, - -249, -249, nil, nil, nil, -249, nil, -249, -249, -249, - -249, -249, -249, -249, nil, nil, nil, nil, -249, -249, - -249, -249, -249, -249, -249, nil, nil, nil, nil, nil, - nil, nil, nil, nil, -249, nil, nil, -249, -249, -249, - -249, -249, -249, -249, -249, -249, -249, nil, -249, -249, - nil, -249, -249, -249, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -249, nil, nil, -249, 254, nil, -249, - -249, nil, nil, -249, nil, -249, nil, -249, nil, -249, - nil, nil, nil, nil, nil, nil, nil, -249, nil, nil, - nil, nil, -249, -249, -249, -249, -249, -249, nil, nil, - nil, -249, -249, -249, -249, -249, nil, -249, nil, nil, - nil, -249, -249, nil, nil, nil, -249, nil, -249, -249, - -249, -249, -249, -249, -249, nil, nil, nil, nil, -249, - -249, -249, -249, -249, -249, -249, nil, nil, nil, nil, - nil, nil, nil, nil, nil, -249, nil, nil, -249, -249, - -249, -249, -249, -249, -249, -249, -249, -249, nil, -249, - -249, nil, -249, -249, -249, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, -249, nil, nil, -249, 263, nil, - -249, -249, nil, nil, -249, nil, -249, nil, -249, nil, - -249, nil, nil, nil, nil, nil, nil, nil, -249, nil, - nil, nil, nil, -249, -249, -249, -249, -249, -249, nil, - nil, nil, -249, -249, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 276, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, nil, nil, 280, nil, 215, 219, 224, - 225, 226, 221, 223, 231, 232, 227, 228, nil, 208, - 209, nil, nil, 229, 230, 273, nil, nil, 270, nil, - nil, 52, 53, nil, nil, 54, nil, 269, nil, 212, - nil, 218, nil, 214, 213, 210, 211, 222, 220, 216, - nil, 217, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, 233, 51, - 568, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 276, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, nil, nil, 280, nil, 215, 219, - 224, 225, 226, 221, 223, 231, 232, 227, 228, nil, - 208, 209, nil, nil, 229, 230, 273, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - 212, nil, 218, nil, 214, 213, 210, 211, 222, 220, - 216, nil, 217, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, 233, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 275, 279, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 28, 27, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, 299, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 23, 24, 65, 66, nil, nil, nil, nil, 22, 28, - 27, 88, 87, 89, 90, nil, nil, 17, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 23, 24, 65, 66, nil, nil, nil, nil, 22, - 28, 27, 88, 87, 89, 90, nil, nil, 17, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 276, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, nil, nil, 280, nil, 215, 219, 224, - 225, 226, 221, 223, 231, 232, 227, 228, nil, 208, - 209, nil, nil, 229, 230, 315, nil, nil, 30, nil, - nil, 52, 53, nil, nil, 54, nil, 32, nil, 212, - nil, 218, nil, 214, 213, 210, 211, 222, 220, 216, - nil, 217, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, 233, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 276, nil, nil, - 92, 91, 320, 50, 84, 83, 321, 85, 93, 94, - nil, 80, 81, nil, nil, nil, 280, nil, 215, 219, - 224, 225, 226, 221, 223, 231, 232, 227, 228, nil, - 208, 209, nil, 327, 229, 230, 322, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - 212, nil, 218, nil, 214, 213, 210, 211, 222, 220, - 216, nil, 217, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, 233, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 276, nil, - nil, 92, 91, 320, 50, 84, 83, 321, 85, 93, - 94, nil, 80, 81, nil, nil, nil, 280, nil, 215, - 219, 224, 225, 226, 221, 223, 231, 232, 227, 228, - nil, 208, 209, nil, nil, 229, 230, 322, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, 212, nil, 218, nil, 214, 213, 210, 211, 222, - 220, 216, nil, 217, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, -473, -473, -473, - 233, -473, nil, nil, nil, -473, -473, nil, nil, nil, - -473, nil, -473, -473, -473, -473, -473, -473, -473, nil, - -473, nil, nil, -473, -473, -473, -473, -473, -473, -473, - nil, nil, nil, nil, nil, nil, nil, nil, nil, -473, - nil, nil, -473, -473, -473, -473, -473, -473, -473, -473, - -473, -473, nil, -473, -473, nil, -473, -473, -473, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, -473, nil, - nil, -473, -473, nil, -473, -473, nil, nil, -473, nil, - -473, nil, -473, nil, -473, nil, nil, nil, nil, nil, - nil, nil, -473, nil, -473, nil, nil, -473, -473, -473, - -473, -473, -473, nil, nil, nil, -473, -473, -474, -474, - -474, nil, -474, nil, nil, nil, -474, -474, nil, nil, - nil, -474, nil, -474, -474, -474, -474, -474, -474, -474, - nil, -474, nil, nil, -474, -474, -474, -474, -474, -474, - -474, nil, nil, nil, nil, nil, nil, nil, nil, nil, - -474, nil, nil, -474, -474, -474, -474, -474, -474, -474, - -474, -474, -474, nil, -474, -474, nil, -474, -474, -474, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, -474, - nil, nil, -474, -474, nil, -474, -474, nil, nil, -474, - nil, -474, nil, -474, nil, -474, nil, nil, nil, nil, - nil, nil, nil, -474, nil, -474, nil, nil, -474, -474, - -474, -474, -474, -474, nil, nil, nil, -474, -474, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 23, 24, - 65, 66, nil, nil, nil, nil, 22, 28, 27, 88, - 87, 89, 90, nil, nil, 17, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 18, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 23, - 24, 65, 66, nil, nil, nil, nil, 22, 28, 27, - 88, 87, 89, 90, nil, nil, 17, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 23, 24, 65, 66, nil, nil, nil, nil, 22, 28, - 27, 88, 87, 89, 90, nil, nil, 17, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, 7, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 23, 24, 65, 66, nil, nil, nil, nil, 22, - 28, 27, 88, 87, 89, 90, nil, nil, 17, nil, - nil, nil, nil, nil, 6, 41, 8, 9, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 36, nil, nil, 30, nil, nil, - 52, 53, nil, nil, 54, nil, 32, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 18, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 23, 24, 65, 66, nil, nil, nil, nil, - 22, 28, 27, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, 369, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, 369, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 207, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 23, 24, 65, 66, nil, nil, - nil, nil, 22, 28, 27, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 28, 27, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - 299, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 23, 24, 65, 66, - nil, nil, nil, nil, 22, 28, 27, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 23, 24, - 65, 66, nil, nil, nil, nil, 22, 28, 27, 88, - 87, 89, 90, nil, nil, 17, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 18, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 207, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 275, 279, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 275, 279, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 275, 279, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 207, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 275, 279, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 275, 279, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 275, 279, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 207, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 275, 279, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 275, 279, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 28, 27, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, 241, nil, 243, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 28, 27, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 445, 53, - nil, nil, 54, nil, 241, nil, 243, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 28, - 27, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, 449, 52, - 53, nil, nil, 54, nil, 241, nil, 243, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 276, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, nil, nil, 280, nil, 215, 219, 224, 225, - 226, 221, 223, 231, 232, 227, 228, nil, 208, 209, - nil, nil, 229, 230, 273, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, 212, nil, - 218, nil, 214, 213, 210, 211, 222, 220, 216, nil, - 217, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, 233, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, 469, - nil, 52, 53, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 207, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 23, 24, 65, 66, nil, nil, - nil, nil, 22, 28, 27, 88, 87, 89, 90, nil, - nil, 17, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 18, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 18, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 23, 24, 65, 66, - nil, nil, nil, nil, 22, 28, 27, 88, 87, 89, - 90, nil, nil, 17, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 18, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 153, 164, 154, 177, 150, 170, 160, 159, 180, 181, - 175, 158, 157, 152, 178, 182, 183, 162, 151, 165, - 169, 171, 163, 156, nil, nil, 172, 179, 174, 173, - 166, 176, 161, 149, 168, 167, nil, nil, nil, nil, - nil, 148, 155, 146, 147, 144, 145, 109, 111, nil, - nil, 110, nil, nil, nil, nil, nil, nil, nil, 139, - 140, nil, 137, 121, 122, 123, nil, 126, 128, nil, - nil, 124, nil, nil, nil, nil, 141, 142, 129, 130, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 134, 133, nil, 120, 138, 136, 135, - 131, 132, 127, 125, 118, nil, 119, nil, nil, 143, - 79, nil, nil, 62, 63, 64, nil, 51, nil, nil, - 78, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, -249, -249, -249, nil, -249, nil, - nil, nil, -249, -249, nil, nil, nil, -249, nil, -249, - -249, -249, -249, -249, -249, -249, nil, nil, nil, nil, - -249, -249, -249, -249, -249, -249, -249, nil, nil, nil, - nil, nil, nil, nil, nil, nil, -249, nil, nil, -249, - -249, -249, -249, -249, -249, -249, -249, -249, -249, nil, - -249, -249, nil, -249, -249, -249, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, -249, nil, nil, -249, 254, - nil, -249, -249, nil, nil, -249, nil, -249, nil, -249, - nil, -249, nil, nil, nil, nil, nil, nil, nil, -249, - nil, nil, nil, nil, -249, -249, -249, -249, -249, -249, - nil, nil, nil, -249, -249, -478, -478, -478, nil, -478, - nil, nil, nil, -478, -478, nil, nil, nil, -478, nil, - -478, -478, -478, -478, -478, -478, -478, nil, nil, nil, - nil, -478, -478, -478, -478, -478, -478, -478, nil, nil, - nil, nil, nil, nil, nil, nil, nil, -478, nil, nil, - -478, -478, -478, -478, -478, -478, -478, -478, -478, -478, - nil, -478, -478, nil, -478, -478, -478, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, -478, nil, nil, -478, - -478, nil, -478, -478, nil, nil, -478, nil, -478, nil, - -478, nil, -478, nil, nil, nil, nil, nil, nil, nil, - -478, nil, nil, nil, nil, -478, -478, -478, -478, -478, - -478, nil, nil, nil, -478, -478, -479, -479, -479, nil, - -479, nil, nil, nil, -479, -479, nil, nil, nil, -479, - nil, -479, -479, -479, -479, -479, -479, -479, nil, nil, - nil, nil, -479, -479, -479, -479, -479, -479, -479, nil, - nil, nil, nil, nil, nil, nil, nil, nil, -479, nil, - nil, -479, -479, -479, -479, -479, -479, -479, -479, -479, - -479, nil, -479, -479, nil, -479, -479, -479, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, -479, nil, nil, - -479, -479, nil, -479, -479, nil, nil, -479, nil, -479, - nil, -479, nil, -479, nil, nil, nil, nil, nil, nil, - nil, -479, nil, nil, nil, nil, -479, -479, -479, -479, - -479, -479, nil, nil, nil, -479, -479, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 28, 27, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - 299, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 275, 279, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 275, 279, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, 560, nil, 243, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, 564, nil, 243, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 23, 24, 65, 66, nil, nil, nil, nil, - 22, 28, 27, 88, 87, 89, 90, nil, nil, 17, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, 584, nil, 243, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 18, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 28, 27, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, 299, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 207, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 275, 279, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 23, 24, 65, - 66, nil, nil, nil, nil, 22, 28, 27, 88, 87, - 89, 90, nil, nil, 17, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 18, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 275, 279, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, 369, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, 612, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, 628, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 28, 27, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, 299, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 207, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 28, 27, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, 299, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, 17, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 18, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 153, 164, - 154, 177, 150, 170, 160, 159, 180, 181, 175, 158, - 157, 152, 178, 182, 183, 162, 151, 165, 169, 171, - 163, 156, nil, nil, 172, 179, 174, 173, 166, 176, - 161, 149, 168, 167, nil, nil, nil, nil, nil, 148, - 155, 146, 147, 144, 145, 109, 111, nil, nil, 110, - nil, nil, nil, nil, nil, nil, nil, 139, 140, nil, - 137, 121, 122, 123, nil, 126, 128, nil, nil, 124, - nil, nil, nil, nil, 141, 142, 129, 130, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 134, 133, nil, 120, 138, 136, 135, 131, 132, - 127, 125, 118, nil, 119, nil, nil, 143, 79, nil, - nil, 62, 63, 64, nil, 51, nil, nil, 78, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, 679, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 23, 24, 65, 66, nil, nil, nil, nil, 22, - 28, 27, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 23, 24, 65, 66, nil, nil, nil, nil, - 22, 28, 27, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 207, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 275, 279, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 276, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, nil, nil, 280, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 273, - nil, nil, 270, nil, nil, 52, 53, nil, nil, 54, - nil, 697, nil, 698, nil, nil, nil, nil, nil, nil, - nil, nil, 699, nil, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 275, 279, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 275, 279, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 28, 27, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, 560, nil, 243, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 23, 24, 65, 66, nil, nil, nil, - nil, 22, 28, 27, 88, 87, 89, 90, nil, nil, - 17, nil, nil, nil, nil, nil, nil, 41, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, 38, 39, 37, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 200, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, - 18, nil, nil, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, nil, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 23, 24, 65, 66, nil, - nil, nil, nil, 22, 28, 27, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 275, 279, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 275, 279, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, 38, - 39, 37, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 200, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, nil, nil, nil, nil, 40, nil, nil, - nil, nil, nil, nil, nil, 207, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 276, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - nil, nil, 280, nil, 215, 219, 224, 225, 226, 221, - 223, 231, 232, 227, 228, nil, 208, 209, nil, nil, - 229, 230, 772, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, 212, nil, 218, nil, - 214, 213, 210, 211, 222, 220, 216, nil, 217, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, 233, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, 780, nil, 243, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, 786, nil, 243, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, 788, nil, 243, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 276, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, nil, nil, 280, nil, 215, 219, - 224, 225, 226, 221, 223, 231, 232, 227, 228, nil, - 208, 209, nil, nil, 229, 230, 772, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - 212, nil, 218, nil, 214, 213, 210, 211, 222, 220, - 216, nil, 217, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, 233, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 23, 24, 65, 66, nil, nil, - nil, nil, 22, 28, 27, 88, 87, 89, 90, nil, - nil, 17, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 18, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 275, 279, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, 38, 39, 37, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 200, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - 802, nil, nil, nil, 40, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, nil, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 275, 279, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, nil, nil, nil, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 275, 279, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 276, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, nil, - nil, 280, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 273, nil, nil, 270, nil, nil, 52, 53, nil, - nil, 54, nil, 821, nil, 820, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, nil, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, 38, 39, 37, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 200, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, nil, nil, - 40, nil, nil, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, nil, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, nil, nil, nil, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 276, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, nil, nil, 280, nil, 215, 219, - 224, 225, 226, 221, 223, 231, 232, 227, 228, nil, - 208, 209, nil, nil, 229, 230, 772, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - 212, nil, 218, nil, 214, 213, 210, 211, 222, 220, - 216, nil, 217, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, 233, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 28, 27, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, 299, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 62, 63, 64, - nil, 51, nil, nil, nil, 56, 57, nil, nil, nil, - 60, nil, 58, 59, 61, 246, 247, 65, 66, nil, - nil, nil, nil, 245, 275, 279, 88, 87, 89, 90, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 276, - nil, nil, 92, 91, 82, 50, 84, 83, 86, 85, - 93, 94, nil, 80, 81, nil, nil, nil, 280, nil, - 215, 219, 224, 225, 226, 221, 223, 231, 232, 227, - 228, nil, 208, 209, nil, nil, 229, 230, 772, nil, - nil, 204, nil, nil, 52, 53, nil, nil, 54, nil, - nil, nil, 212, nil, 218, nil, 214, 213, 210, 211, - 222, 220, 216, nil, 217, nil, nil, 79, 72, 74, - 75, 76, 77, nil, nil, nil, 73, 78, 62, 63, - 64, 233, 51, nil, nil, nil, 56, 57, nil, nil, - nil, 60, nil, 58, 59, 61, 246, 247, 65, 66, - nil, nil, nil, nil, 245, 275, 279, 88, 87, 89, - 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 41, nil, nil, 92, 91, 82, 50, 84, 83, 86, - 85, 93, 94, nil, 80, 81, nil, 38, 39, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 200, - nil, nil, 204, nil, nil, 52, 53, nil, nil, 54, - nil, 864, nil, 243, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, nil, nil, 79, 72, - 74, 75, 76, 77, nil, nil, nil, 73, 78, 62, - 63, 64, nil, 51, nil, nil, nil, 56, 57, nil, - nil, nil, 60, nil, 58, 59, 61, 246, 247, 65, - 66, nil, nil, nil, nil, 245, 275, 279, 88, 87, - 89, 90, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, nil, nil, 92, 91, 82, 50, 84, 83, - 86, 85, 93, 94, nil, 80, 81, nil, 38, 39, - 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 200, nil, nil, 204, nil, nil, 52, 53, nil, nil, - 54, nil, 867, nil, 243, nil, 40, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, nil, nil, 79, - 72, 74, 75, 76, 77, nil, nil, nil, 73, 78, - 62, 63, 64, nil, 51, nil, nil, nil, 56, 57, - nil, nil, nil, 60, nil, 58, 59, 61, 246, 247, - 65, 66, nil, nil, nil, nil, 245, 275, 279, 88, - 87, 89, 90, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 276, nil, nil, 92, 91, 82, 50, 84, - 83, 86, 85, 93, 94, nil, 80, 81, nil, nil, - nil, 280, nil, 215, 219, 224, 225, 226, 221, 223, - 231, 232, 227, 228, nil, 208, 209, nil, nil, 229, - 230, 772, nil, nil, 204, nil, nil, 52, 53, nil, - nil, 54, nil, nil, nil, 212, nil, 218, nil, 214, - 213, 210, 211, 222, 220, 216, nil, 217, nil, nil, - 79, 72, 74, 75, 76, 77, nil, nil, nil, 73, - 78, 62, 63, 64, 233, 51, nil, nil, nil, 56, - 57, nil, nil, nil, 60, nil, 58, 59, 61, 246, - 247, 65, 66, nil, nil, nil, nil, 245, 275, 279, - 88, 87, 89, 90, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, 92, 91, 82, 50, - 84, 83, 86, 85, 93, 94, nil, 80, 81, nil, - 38, 39, 37, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 200, nil, nil, 204, nil, nil, 52, 53, - nil, nil, 54, nil, nil, nil, nil, nil, 40, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 79, 72, 74, 75, 76, 77, nil, nil, nil, - 73, 78, 62, 63, 64, nil, 51, nil, nil, nil, - 56, 57, nil, nil, nil, 60, nil, 58, 59, 61, - 246, 247, 65, 66, nil, nil, nil, nil, 245, 275, - 279, 88, 87, 89, 90, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 92, 91, 82, - 50, 84, 83, 86, 85, 93, 94, nil, 80, 81, - nil, 38, 39, 37, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 200, nil, nil, 204, nil, nil, 52, - 53, nil, nil, 54, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, 207, nil, nil, - nil, nil, 79, 72, 74, 75, 76, 77, nil, nil, - nil, 73, 78, 62, 63, 64, nil, 51, nil, nil, - nil, 56, 57, nil, nil, nil, 60, nil, 58, 59, - 61, 246, 247, 65, 66, nil, nil, nil, nil, 245, - 275, 279, 88, 87, 89, 90, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 276, nil, nil, 92, 91, - 82, 50, 84, 83, 86, 85, 93, 94, nil, 80, - 81, nil, nil, nil, 280, nil, 215, 219, 224, 225, - 226, 221, 223, 231, 232, 227, 228, nil, 208, 209, - nil, nil, 229, 230, 772, nil, nil, 204, nil, nil, - 52, 53, nil, nil, 54, nil, nil, nil, 212, nil, - 218, nil, 214, 213, 210, 211, 222, 220, 216, nil, - 217, nil, nil, 79, 72, 74, 75, 76, 77, nil, - nil, nil, 73, 78, 62, 63, 64, 233, 51, nil, - nil, nil, 56, 57, nil, nil, nil, 60, nil, 58, - 59, 61, 246, 247, 65, 66, nil, nil, nil, nil, - 245, 275, 279, 88, 87, 89, 90, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, 92, - 91, 82, 50, 84, 83, 86, 85, 93, 94, nil, - 80, 81, nil, 38, 39, 37, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 200, nil, nil, 204, nil, - nil, 52, 53, nil, nil, 54, nil, 889, nil, 243, - nil, 40, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 79, 72, 74, 75, 76, 77, - nil, nil, nil, 73, 78, 62, 63, 64, nil, 51, - nil, nil, nil, 56, 57, nil, nil, nil, 60, nil, - 58, 59, 61, 246, 247, 65, 66, nil, nil, nil, - nil, 245, 275, 279, 88, 87, 89, 90, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 276, nil, nil, - 92, 91, 82, 50, 84, 83, 86, 85, 93, 94, - nil, 80, 81, nil, nil, nil, 280, nil, 215, 219, - 224, 225, 226, 221, 223, 231, 232, 227, 228, nil, - 208, 209, nil, nil, 229, 230, 772, nil, nil, 204, - nil, nil, 52, 53, nil, nil, 54, nil, nil, nil, - 212, nil, 218, nil, 214, 213, 210, 211, 222, 220, - 216, nil, 217, nil, nil, 79, 72, 74, 75, 76, - 77, nil, nil, nil, 73, 78, 62, 63, 64, 233, - 51, nil, nil, nil, 56, 57, nil, nil, nil, 60, - nil, 58, 59, 61, 246, 247, 65, 66, nil, nil, - nil, nil, 245, 275, 279, 88, 87, 89, 90, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, - nil, 92, 91, 82, 50, 84, 83, 86, 85, 93, - 94, nil, 80, 81, nil, 38, 39, 37, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 200, nil, nil, - 204, nil, nil, 52, 53, nil, nil, 54, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, nil, nil, - nil, 207, nil, nil, nil, nil, 79, 72, 74, 75, - 76, 77, nil, nil, nil, 73, 78, 153, 164, 154, - 177, 150, 170, 160, 159, 180, 181, 175, 158, 157, - 152, 178, 182, 183, 162, 151, 165, 169, 171, 163, - 156, nil, nil, 172, 179, 174, 336, 335, 337, 334, - 149, 168, 167, nil, nil, nil, nil, nil, 148, 155, - 146, 147, 332, 333, 330, 111, 84, 83, 331, 85, - nil, nil, nil, nil, nil, nil, 139, 140, nil, 137, - 121, 122, 123, nil, 126, 128, nil, nil, 124, nil, - nil, nil, nil, 141, 142, 129, 130, nil, nil, nil, - nil, nil, 341, nil, nil, nil, nil, nil, nil, nil, - 134, 133, nil, 120, 138, 136, 135, 131, 132, 127, - 125, 118, nil, 119, nil, nil, 143, 153, 164, 154, - 177, 150, 170, 160, 159, 180, 181, 175, 158, 157, - 152, 178, 182, 183, 162, 151, 165, 169, 171, 163, - 156, nil, nil, 172, 179, 174, 173, 166, 176, 161, - 149, 168, 167, nil, nil, nil, nil, nil, 148, 155, - 146, 147, 144, 145, 109, 111, nil, nil, 110, nil, - nil, nil, nil, nil, nil, nil, 139, 140, nil, 137, - 121, 122, 123, nil, 126, 128, nil, nil, 124, nil, - nil, nil, nil, 141, 142, 129, 130, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 134, 133, nil, 120, 138, 136, 135, 131, 132, 127, - 125, 118, nil, 119, nil, nil, 143, 215, 219, 224, - 225, 226, 221, 223, 231, 232, 227, 228, nil, 208, - 209, nil, nil, 229, 230, nil, nil, nil, -215, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 212, - nil, 218, nil, 214, 213, 210, 211, 222, 220, 216, - nil, 217, nil, nil, nil, nil, nil, nil, nil, 376, - 379, nil, nil, 377, nil, nil, nil, nil, 233, nil, - -215, 139, 140, nil, 137, 121, 122, 123, nil, 126, - 128, nil, nil, 124, nil, nil, nil, nil, 141, 142, - 129, 130, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 134, 133, nil, 120, 138, - 136, 135, 131, 132, 127, 125, 118, nil, 119, 381, - 385, 143, nil, 383, nil, nil, nil, nil, nil, nil, - nil, 139, 140, nil, 137, 121, 122, 123, nil, 126, - 128, nil, nil, 124, nil, nil, nil, nil, 141, 142, - 129, 130, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 134, 133, nil, 120, 138, - 136, 135, 131, 132, 127, 125, 118, nil, 119, 433, - 379, 143, nil, 434, nil, nil, nil, nil, nil, nil, - nil, 139, 140, nil, 137, 121, 122, 123, nil, 126, - 128, nil, nil, 124, nil, nil, nil, nil, 141, 142, - 129, 130, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 134, 133, nil, 120, 138, - 136, 135, 131, 132, 127, 125, 118, nil, 119, 433, - 379, 143, nil, 434, nil, nil, nil, nil, nil, nil, - nil, 139, 140, nil, 137, 121, 122, 123, nil, 126, - 128, nil, nil, 124, nil, nil, nil, nil, 141, 142, - 129, 130, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 134, 133, nil, 120, 138, - 136, 135, 131, 132, 127, 125, 118, nil, 119, 550, - 379, 143, nil, 551, nil, nil, nil, nil, nil, nil, - nil, 139, 140, nil, 137, 121, 122, 123, nil, 126, - 128, nil, nil, 124, nil, nil, nil, nil, 141, 142, - 129, 130, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 134, 133, nil, 120, 138, - 136, 135, 131, 132, 127, 125, 118, nil, 119, 552, - 385, 143, nil, 553, nil, nil, nil, nil, nil, nil, - nil, 139, 140, nil, 137, 121, 122, 123, nil, 126, - 128, nil, nil, 124, nil, nil, nil, nil, 141, 142, - 129, 130, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 134, 133, nil, 120, 138, - 136, 135, 131, 132, 127, 125, 118, nil, 119, nil, - nil, 143, 215, 219, 224, 225, 226, 221, 223, 231, - 232, 227, 228, nil, 208, 209, nil, nil, 229, 230, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 212, nil, 218, nil, 214, 213, - 210, 211, 222, 220, 216, nil, 217, nil, nil, nil, - nil, nil, nil, 594, 379, nil, nil, 595, nil, nil, - nil, nil, nil, 233, 556, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 597, 385, 143, nil, 598, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 550, 379, 143, nil, 551, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 552, 385, 143, nil, 553, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 630, 379, 143, nil, 631, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 632, 385, 143, nil, 633, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 635, 385, 143, nil, 636, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 433, 379, 143, nil, 434, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 433, 379, 143, nil, 434, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 433, 379, 143, nil, 434, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 857, 379, 143, nil, 858, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, 859, 385, 143, nil, 860, nil, nil, - nil, nil, nil, nil, nil, 139, 140, nil, 137, 121, - 122, 123, nil, 126, 128, nil, nil, 124, nil, nil, - nil, nil, 141, 142, 129, 130, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 134, - 133, nil, 120, 138, 136, 135, 131, 132, 127, 125, - 118, nil, 119, nil, nil, 143, 215, 219, 224, 225, - 226, 221, 223, 231, 232, 227, 228, nil, 208, 209, - nil, nil, 229, 230, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 212, nil, - 218, nil, 214, 213, 210, 211, 222, 220, 216, nil, - 217, nil, 215, 219, 224, 225, 226, 221, 223, 231, - 232, 227, 228, nil, 208, 209, 291, 233, 229, 230, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 212, nil, 218, nil, 214, 213, - 210, 211, 222, 220, 216, nil, 217, nil, 215, 219, - 224, 225, 226, 221, 223, 231, 232, 227, 228, nil, - 208, 209, 291, 233, 229, 230, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 212, nil, 218, nil, 214, 213, 210, 211, 222, 220, - 216, nil, 217, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 233 ] - -racc_action_check = [ - 381, 512, 512, 518, 518, 306, 755, 381, 381, 381, - 326, 440, 711, 381, 381, 313, 381, 199, 440, 711, - 307, 70, 347, 316, 424, 381, 3, 627, 500, 70, - 1, 3, 201, 603, 603, 381, 381, 630, 381, 381, - 381, 381, 381, 727, 798, 446, 311, 631, 311, 632, - 743, 394, 755, 755, 755, 755, 8, 310, 424, 447, - 440, 711, 310, 199, 381, 381, 381, 381, 381, 381, - 381, 381, 381, 381, 381, 381, 381, 381, 201, 446, - 381, 381, 381, 55, 381, 347, 603, 594, 381, 591, - 512, 381, 518, 447, 491, 512, 381, 394, 381, 633, - 381, 381, 381, 381, 381, 381, 381, 383, 381, 381, - 381, 9, 632, 326, 383, 383, 383, 306, 313, 306, - 383, 383, 306, 383, 381, 381, 316, 381, 591, 381, - 381, 500, 307, 326, 307, 492, 595, 307, 326, 627, - 630, 627, 383, 383, 627, 383, 383, 383, 383, 383, - 631, 594, 632, 743, 582, 727, 798, 727, 798, 744, - 727, 798, 633, 26, 322, 15, 15, 55, 322, 594, - 550, 383, 383, 383, 383, 383, 383, 383, 383, 383, - 383, 383, 383, 383, 383, 574, 277, 383, 383, 383, - 594, 383, 491, 594, 491, 383, 582, 491, 383, 551, - 595, 10, 633, 383, 528, 383, 343, 383, 383, 383, - 383, 383, 383, 383, 50, 383, 550, 383, 595, 574, - 11, 50, 50, 50, 511, 26, 50, 50, 50, 511, - 50, 383, 383, 492, 383, 492, 383, 383, 492, 595, - 50, 50, 595, 297, 12, 551, 297, 26, 277, 50, - 50, 693, 50, 50, 50, 50, 50, 744, 14, 744, - 298, 20, 744, 298, 344, 528, 528, 343, 343, 343, - 277, 301, 108, 34, 301, 528, 108, 108, 50, 50, - 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, - 50, 50, 345, 13, 50, 50, 50, 693, 36, 50, - 13, 14, 50, 346, 14, 50, 50, 41, 50, 13, - 50, 95, 50, 419, 50, 50, 50, 50, 50, 50, - 50, 432, 50, 184, 50, 344, 344, 344, 432, 432, - 432, 848, 200, 432, 432, 432, 348, 432, 50, 50, - 50, 50, 202, 50, 320, 419, 803, 432, 803, 419, - 419, 419, 419, 345, 345, 345, 432, 432, 203, 432, - 432, 432, 432, 432, 346, 346, 346, 25, 303, 239, - 321, 303, 597, 635, 25, 42, 435, 848, 848, 848, - 848, 240, 42, 435, 435, 435, 330, 857, 435, 435, - 435, 42, 435, 330, 320, 244, 432, 348, 348, 348, - 35, 320, 435, 432, 37, 37, 320, 253, 432, 432, - 320, 435, 435, 264, 435, 435, 435, 435, 435, 283, - 321, 266, 597, 635, 376, 858, 377, 321, 320, 597, - 635, 432, 321, 540, 597, 635, 321, 857, 597, 635, - 267, 400, 268, 35, 857, 432, 35, 432, 401, 857, - 432, 435, 198, 857, 321, 640, 597, 635, 435, 198, - 640, 646, 283, 435, 435, 283, 646, 376, 198, 377, - 376, 857, 377, 400, 271, 858, 540, 400, 400, 540, - 401, 271, 858, 273, 401, 401, 435, 858, 280, 280, - 271, 858, 294, 294, 331, 552, 552, 552, 275, 552, - 435, 331, 435, 552, 552, 435, 276, 859, 552, 858, - 552, 552, 552, 552, 552, 552, 552, 305, 305, 615, - 615, 552, 552, 552, 552, 552, 552, 552, 332, 420, - 279, 333, 334, 758, 758, 332, 284, 552, 333, 334, - 552, 552, 552, 552, 552, 552, 552, 552, 552, 552, - 285, 552, 552, 335, 552, 552, 552, 859, 870, 870, - 335, 420, 288, 336, 859, 420, 420, 420, 420, 859, - 336, 272, 292, 859, 337, 293, 552, 552, 272, 552, - 552, 337, 552, 552, 296, 300, 552, 272, 552, 302, - 552, 859, 552, 312, 339, 274, 286, 314, 315, 317, - 552, 339, 274, 286, 314, 552, 552, 552, 552, 552, - 552, 274, 286, 314, 552, 552, 553, 553, 553, 362, - 553, 363, 368, 552, 553, 553, 371, 375, 382, 553, - 402, 553, 553, 553, 553, 553, 553, 553, 403, 404, - 405, 429, 553, 553, 553, 553, 553, 553, 553, 522, - 522, 438, 522, 522, 522, 439, 441, 442, 553, 448, - 450, 553, 553, 553, 553, 553, 553, 553, 553, 553, - 553, 451, 553, 553, 455, 553, 553, 553, 398, 398, - 398, 398, 398, 398, 398, 398, 398, 398, 398, 324, - 398, 398, 459, 460, 398, 398, 324, 553, 553, 459, - 553, 553, 470, 553, 553, 324, 473, 553, 459, 553, - 398, 553, 398, 553, 398, 398, 398, 398, 398, 398, - 398, 553, 398, 487, 493, 494, 553, 553, 553, 553, - 553, 553, 526, 503, 531, 553, 553, 60, 60, 60, - 503, 60, 543, 547, 553, 60, 60, 554, 561, 503, - 60, 563, 60, 60, 60, 60, 60, 60, 60, 566, - 568, 576, 577, 60, 60, 60, 60, 60, 60, 60, - 583, 586, 60, 593, 596, 599, 601, 366, 602, 60, - 604, 607, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 608, 60, 60, 611, 60, 60, 60, 366, - 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, - 598, 366, 366, 721, 617, 366, 366, 598, 60, 623, - 721, 60, 598, 625, 60, 60, 598, 626, 60, 721, - 629, 366, 638, 366, 60, 366, 366, 366, 366, 366, - 366, 366, 60, 366, 643, 647, 648, 60, 60, 60, - 60, 60, 60, 649, 655, 660, 60, 60, 663, 60, - 366, 665, 366, 636, 60, 97, 97, 97, 97, 97, - 636, 678, 696, 97, 97, 636, 700, 701, 97, 636, - 97, 97, 97, 97, 97, 97, 97, 702, 705, 709, - 710, 97, 97, 97, 97, 97, 97, 97, 712, 716, - 97, 4, 4, 4, 4, 4, 97, 97, 97, 97, - 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, - 718, 97, 97, 719, 97, 97, 97, 399, 399, 399, - 399, 399, 399, 399, 399, 399, 399, 399, 770, 399, - 399, 771, 720, 399, 399, 770, 97, 732, 771, 97, - 735, 746, 97, 97, 770, 750, 97, 771, 97, 399, - 751, 399, 97, 399, 399, 399, 399, 399, 399, 399, - 97, 399, 764, 772, 774, 97, 97, 97, 97, 97, - 97, 775, 773, 782, 97, 97, 697, 697, 697, 773, - 697, 783, 97, 825, 697, 697, 784, 787, 773, 697, - 825, 697, 697, 697, 697, 697, 697, 697, 800, 825, - 801, 806, 697, 697, 697, 697, 697, 697, 697, 106, - 106, 106, 106, 106, 808, 809, 810, 813, 697, 814, - 826, 697, 697, 697, 697, 697, 697, 697, 697, 697, - 697, 833, 697, 697, 410, 836, 514, 697, 514, 514, - 514, 514, 860, 837, 854, 876, 855, 856, 865, 860, - 410, 410, 876, 871, 860, 872, 873, 697, 860, 874, - 697, 876, 878, 697, 697, 881, 410, 697, 410, 892, - 410, 410, 410, 410, 514, nil, 410, nil, 410, nil, - nil, nil, 514, 514, 514, 514, 697, 697, 697, 697, - 697, 697, nil, nil, nil, 697, 697, nil, 821, 821, - 821, 697, 821, nil, nil, nil, 821, 821, nil, nil, - nil, 821, nil, 821, 821, 821, 821, 821, 821, 821, - nil, nil, nil, nil, 821, 821, 821, 821, 821, 821, - 821, 350, 350, 350, 350, 350, nil, nil, 555, nil, - 821, nil, nil, 821, 821, 821, 821, 821, 821, 821, - 821, 821, 821, nil, 821, 821, nil, nil, nil, 821, - 555, 555, 555, 555, 555, 555, 555, 555, 555, 555, - 555, nil, 555, 555, nil, nil, 555, 555, nil, 821, - nil, nil, 821, nil, nil, 821, 821, nil, nil, 821, - nil, nil, 555, nil, 555, nil, 555, 555, 555, 555, - 555, 555, 555, nil, 555, nil, nil, nil, 821, 821, - 821, 821, 821, 821, nil, nil, nil, 821, 821, nil, - nil, 555, nil, 821, 0, 0, 0, 0, 0, 0, - nil, nil, nil, 0, 0, nil, nil, nil, 0, nil, - 0, 0, 0, 0, 0, 0, 0, nil, nil, nil, - nil, 0, 0, 0, 0, 0, 0, 0, nil, nil, - 0, nil, nil, nil, nil, nil, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - nil, 0, 0, nil, 0, 0, 0, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 0, nil, nil, 0, - nil, nil, 0, 0, nil, nil, 0, nil, 0, nil, - nil, nil, 0, 645, nil, 645, 645, 645, 645, nil, - 0, nil, nil, nil, nil, 0, 0, 0, 0, 0, - 0, nil, nil, nil, 0, 0, 30, 30, 30, 30, - 30, 30, nil, nil, nil, 30, 30, nil, nil, nil, - 30, nil, 30, 30, 30, 30, 30, 30, 30, 645, - 645, 645, 645, 30, 30, 30, 30, 30, 30, 30, - nil, nil, 30, nil, nil, nil, nil, nil, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, - 30, 30, nil, 30, 30, nil, 30, 30, 30, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 30, nil, - nil, 30, nil, nil, 30, 30, nil, nil, 30, nil, - 30, nil, nil, nil, 30, 753, nil, 753, 753, 753, - 753, nil, 30, nil, nil, nil, nil, 30, 30, 30, - 30, 30, 30, nil, nil, nil, 30, 30, 51, 51, - 51, 51, 51, 51, nil, nil, nil, 51, 51, nil, - nil, nil, 51, nil, 51, 51, 51, 51, 51, 51, - 51, 753, 753, 753, 753, 51, 51, 51, 51, 51, - 51, 51, nil, nil, 51, nil, nil, nil, nil, nil, - 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, - 51, 51, 51, 51, nil, 51, 51, nil, 51, 51, - 51, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 51, nil, nil, 51, nil, nil, 51, 51, nil, nil, - 51, nil, 51, nil, nil, nil, 51, 817, nil, 817, - 817, 817, 817, nil, 51, nil, nil, nil, nil, 51, - 51, 51, 51, 51, 51, nil, nil, nil, 51, 51, - 186, 186, 186, 186, 186, 186, nil, nil, nil, 186, - 186, nil, nil, nil, 186, 817, 186, 186, 186, 186, - 186, 186, 186, 817, 817, 817, 817, 186, 186, 186, - 186, 186, 186, 186, nil, nil, 186, nil, nil, nil, - nil, nil, 186, 186, 186, 186, 186, 186, 186, 186, - 186, 186, 186, 186, 186, 186, nil, 186, 186, nil, - 186, 186, 186, 409, 409, 409, 409, 409, 409, 409, - nil, nil, 409, 409, nil, nil, nil, nil, nil, 409, - 409, nil, 186, nil, nil, 186, nil, nil, 186, 186, - nil, nil, 186, nil, 186, 409, nil, 409, 186, 409, - 409, 409, 409, 409, 409, 409, 186, 409, nil, nil, - nil, 186, 186, 186, 186, 186, 186, nil, nil, nil, - 186, 186, 187, 187, 187, 187, 187, 187, nil, nil, - nil, 187, 187, nil, nil, nil, 187, nil, 187, 187, - 187, 187, 187, 187, 187, nil, nil, nil, nil, 187, - 187, 187, 187, 187, 187, 187, nil, nil, 187, nil, - nil, nil, nil, nil, 187, 187, 187, 187, 187, 187, - 187, 187, 187, 187, 187, 187, 187, 187, nil, 187, - 187, nil, 187, 187, 187, 411, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 411, 411, nil, 187, nil, nil, 187, nil, nil, - 187, 187, nil, nil, 187, nil, 187, 411, nil, 411, - 187, 411, 411, 411, 411, nil, nil, 411, 187, 411, - nil, nil, nil, 187, 187, 187, 187, 187, 187, nil, - nil, nil, 187, 187, 204, 204, 204, 204, 204, 204, - nil, nil, nil, 204, 204, nil, nil, nil, 204, nil, - 204, 204, 204, 204, 204, 204, 204, nil, nil, nil, - nil, 204, 204, 204, 204, 204, 204, 204, nil, nil, - 204, nil, nil, nil, nil, nil, 204, 204, 204, 204, - 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, - nil, 204, 204, nil, 204, 204, 204, 412, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 412, 412, nil, 204, nil, nil, 204, - nil, nil, 204, 204, nil, nil, 204, nil, 204, 412, - nil, 412, 204, 412, 412, 412, 412, nil, nil, 412, - 204, 412, nil, nil, nil, 204, 204, 204, 204, 204, - 204, nil, nil, nil, 204, 204, 265, 265, 265, 265, - 265, 265, nil, nil, nil, 265, 265, nil, nil, nil, - 265, nil, 265, 265, 265, 265, 265, 265, 265, nil, - nil, nil, nil, 265, 265, 265, 265, 265, 265, 265, - nil, nil, 265, nil, nil, nil, nil, nil, 265, 265, - 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, - 265, 265, nil, 265, 265, nil, 265, 265, 265, 413, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 413, 413, nil, 265, nil, - nil, 265, nil, nil, 265, 265, nil, nil, 265, nil, - 265, 413, nil, 413, 265, 413, 413, 413, 413, nil, - nil, 413, 265, 413, nil, nil, nil, 265, 265, 265, - 265, 265, 265, nil, nil, nil, 265, 265, 270, 270, - 270, 270, 270, 270, nil, nil, nil, 270, 270, nil, - nil, nil, 270, nil, 270, 270, 270, 270, 270, 270, - 270, nil, nil, nil, nil, 270, 270, 270, 270, 270, - 270, 270, nil, nil, 270, nil, nil, nil, nil, nil, - 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, - 270, 270, 270, 270, nil, 270, 270, nil, 270, 270, - 270, 414, 414, 414, 414, 414, 414, 414, nil, nil, - 414, 414, nil, nil, nil, nil, nil, 414, 414, nil, - 270, nil, nil, 270, nil, nil, 270, 270, nil, nil, - 270, nil, 270, 414, nil, 414, 270, 414, 414, 414, - 414, 414, 414, 414, 270, 414, nil, nil, nil, 270, - 270, 270, 270, 270, 270, nil, nil, nil, 270, 270, - 486, 486, 486, 486, 486, 486, nil, nil, nil, 486, - 486, nil, nil, nil, 486, nil, 486, 486, 486, 486, - 486, 486, 486, nil, nil, nil, nil, 486, 486, 486, - 486, 486, 486, 486, nil, nil, 486, nil, nil, nil, - nil, nil, 486, 486, 486, 486, 486, 486, 486, 486, - 486, 486, 486, 486, 486, 486, nil, 486, 486, nil, - 486, 486, 486, 415, 415, 415, 415, 415, 415, 415, - nil, nil, 415, 415, nil, nil, nil, nil, nil, 415, - 415, nil, 486, nil, nil, 486, nil, nil, 486, 486, - nil, nil, 486, nil, 486, 415, nil, 415, 486, 415, - 415, 415, 415, 415, 415, 415, 486, 415, nil, nil, - nil, 486, 486, 486, 486, 486, 486, nil, nil, nil, - 486, 486, 490, 490, 490, 490, 490, 490, nil, nil, - nil, 490, 490, nil, nil, nil, 490, nil, 490, 490, - 490, 490, 490, 490, 490, nil, nil, nil, nil, 490, - 490, 490, 490, 490, 490, 490, nil, nil, 490, nil, - nil, nil, nil, nil, 490, 490, 490, 490, 490, 490, - 490, 490, 490, 490, 490, 490, 490, 490, nil, 490, - 490, nil, 490, 490, 490, 416, 416, 416, 416, 416, - 416, 416, nil, nil, 416, 416, nil, nil, nil, nil, - nil, 416, 416, nil, 490, nil, nil, 490, nil, nil, - 490, 490, nil, nil, 490, nil, 490, 416, nil, 416, - 490, 416, 416, 416, 416, 416, 416, 416, 490, 416, - nil, nil, nil, 490, 490, 490, 490, 490, 490, nil, - nil, nil, 490, 490, 495, 495, 495, 495, 495, 495, - nil, nil, nil, 495, 495, nil, nil, nil, 495, nil, - 495, 495, 495, 495, 495, 495, 495, nil, nil, nil, - nil, 495, 495, 495, 495, 495, 495, 495, nil, nil, - 495, nil, nil, nil, nil, nil, 495, 495, 495, 495, - 495, 495, 495, 495, 495, 495, 495, 495, 495, 495, - nil, 495, 495, nil, 495, 495, 495, 417, 417, 417, - 417, 417, 417, 417, nil, nil, 417, 417, nil, nil, - nil, nil, nil, 417, 417, nil, 495, nil, nil, 495, - nil, nil, 495, 495, nil, nil, 495, nil, 495, 417, - nil, 417, 495, 417, 417, 417, 417, 417, 417, 417, - 495, 417, nil, nil, nil, 495, 495, 495, 495, 495, - 495, nil, nil, nil, 495, 495, 513, 513, 513, 513, - 513, 513, nil, nil, nil, 513, 513, nil, nil, nil, - 513, nil, 513, 513, 513, 513, 513, 513, 513, nil, - nil, nil, nil, 513, 513, 513, 513, 513, 513, 513, - nil, nil, 513, nil, nil, nil, nil, nil, 513, 513, - 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, - 513, 513, nil, 513, 513, nil, 513, 513, 513, 418, - 418, 418, 418, 418, 418, 418, nil, nil, 418, 418, - nil, nil, nil, nil, nil, 418, 418, nil, 513, nil, - nil, 513, nil, nil, 513, 513, nil, nil, 513, nil, - 513, 418, nil, 418, 513, 418, 418, 418, 418, 418, - 418, 418, 513, 418, nil, nil, nil, 513, 513, 513, - 513, 513, 513, nil, nil, nil, 513, 513, 559, 559, - 559, 559, 559, 559, nil, nil, nil, 559, 559, nil, - nil, nil, 559, nil, 559, 559, 559, 559, 559, 559, - 559, nil, nil, nil, nil, 559, 559, 559, 559, 559, - 559, 559, nil, nil, 559, nil, nil, nil, nil, nil, - 559, 559, 559, 559, 559, 559, 559, 559, 559, 559, - 559, 559, 559, 559, nil, 559, 559, nil, 559, 559, - 559, 421, 421, 421, 421, 421, 421, 421, nil, nil, - 421, 421, nil, nil, nil, nil, nil, 421, 421, nil, - 559, nil, nil, 559, nil, nil, 559, 559, nil, nil, - 559, nil, 559, 421, nil, 421, 559, 421, 421, 421, - 421, 421, 421, 421, 559, 421, nil, nil, nil, 559, - 559, 559, 559, 559, 559, nil, nil, nil, 559, 559, - 588, 588, 588, 588, 588, 588, nil, nil, nil, 588, - 588, nil, nil, nil, 588, nil, 588, 588, 588, 588, - 588, 588, 588, nil, nil, nil, nil, 588, 588, 588, - 588, 588, 588, 588, nil, nil, 588, nil, nil, nil, - nil, nil, 588, 588, 588, 588, 588, 588, 588, 588, - 588, 588, 588, 588, 588, 588, nil, 588, 588, nil, - 588, 588, 588, 422, 422, 422, 422, 422, 422, 422, - 422, nil, 422, 422, nil, nil, nil, nil, nil, 422, - 422, nil, 588, nil, nil, 588, nil, nil, 588, 588, - nil, nil, 588, nil, 588, 422, nil, 422, 588, 422, - 422, 422, 422, 422, 422, 422, 588, 422, nil, nil, - nil, 588, 588, 588, 588, 588, 588, nil, nil, nil, - 588, 588, 589, 589, 589, 589, 589, 589, nil, nil, - nil, 589, 589, nil, nil, nil, 589, nil, 589, 589, - 589, 589, 589, 589, 589, nil, nil, nil, nil, 589, - 589, 589, 589, 589, 589, 589, nil, nil, 589, nil, - nil, nil, nil, nil, 589, 589, 589, 589, 589, 589, - 589, 589, 589, 589, 589, 589, 589, 589, nil, 589, - 589, nil, 589, 589, 589, 406, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 406, 406, nil, 589, nil, nil, 589, nil, nil, - 589, 589, nil, nil, 589, nil, 589, 406, nil, 406, - 589, 406, 406, 406, 406, nil, nil, nil, 589, nil, - nil, nil, nil, 589, 589, 589, 589, 589, 589, nil, - nil, nil, 589, 589, 606, 606, 606, 606, 606, 606, - nil, nil, nil, 606, 606, nil, nil, nil, 606, nil, - 606, 606, 606, 606, 606, 606, 606, nil, nil, nil, - nil, 606, 606, 606, 606, 606, 606, 606, nil, nil, - 606, nil, nil, nil, nil, nil, 606, 606, 606, 606, - 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, - nil, 606, 606, nil, 606, 606, 606, 407, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 407, 407, nil, 606, nil, nil, 606, - nil, nil, 606, 606, nil, nil, 606, nil, 606, 407, - nil, 407, 606, 407, 407, 407, 407, nil, nil, nil, - 606, nil, nil, nil, nil, 606, 606, 606, 606, 606, - 606, nil, nil, nil, 606, 606, 639, 639, 639, 639, - 639, 639, nil, nil, nil, 639, 639, nil, nil, nil, - 639, nil, 639, 639, 639, 639, 639, 639, 639, nil, - nil, nil, nil, 639, 639, 639, 639, 639, 639, 639, - nil, nil, 639, nil, nil, nil, nil, nil, 639, 639, - 639, 639, 639, 639, 639, 639, 639, 639, 639, 639, - 639, 639, nil, 639, 639, nil, 639, 639, 639, 408, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 408, 408, nil, 639, nil, - nil, 639, nil, nil, 639, 639, nil, nil, 639, nil, - 639, 408, nil, nil, 639, 408, 408, 408, 408, nil, - nil, nil, 639, nil, nil, nil, nil, 639, 639, 639, - 639, 639, 639, nil, nil, nil, 639, 639, 644, 644, - 644, 644, 644, 644, nil, nil, nil, 644, 644, nil, - nil, nil, 644, nil, 644, 644, 644, 644, 644, 644, - 644, nil, nil, nil, nil, 644, 644, 644, 644, 644, - 644, 644, nil, nil, 644, nil, nil, nil, nil, nil, - 644, 644, 644, 644, 644, 644, 644, 644, 644, 644, - 644, 644, 644, 644, nil, 644, 644, nil, 644, 644, - 644, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 644, nil, nil, 644, nil, nil, 644, 644, nil, nil, - 644, nil, 644, nil, nil, nil, 644, nil, nil, nil, - nil, nil, nil, nil, 644, nil, nil, nil, nil, 644, - 644, 644, 644, 644, 644, nil, nil, nil, 644, 644, - 671, 671, 671, 671, 671, 671, nil, nil, nil, 671, - 671, nil, nil, nil, 671, nil, 671, 671, 671, 671, - 671, 671, 671, nil, nil, nil, nil, 671, 671, 671, - 671, 671, 671, 671, nil, nil, 671, nil, nil, nil, - nil, nil, 671, 671, 671, 671, 671, 671, 671, 671, - 671, 671, 671, 671, 671, 671, nil, 671, 671, nil, - 671, 671, 671, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 671, nil, nil, 671, nil, nil, 671, 671, - nil, nil, 671, nil, 671, nil, nil, nil, 671, nil, - nil, nil, nil, nil, nil, nil, 671, nil, nil, nil, - nil, 671, 671, 671, 671, 671, 671, nil, nil, nil, - 671, 671, 706, 706, 706, 706, 706, 706, nil, nil, - nil, 706, 706, nil, nil, nil, 706, nil, 706, 706, - 706, 706, 706, 706, 706, nil, nil, nil, nil, 706, - 706, 706, 706, 706, 706, 706, nil, nil, 706, nil, - nil, nil, nil, nil, 706, 706, 706, 706, 706, 706, - 706, 706, 706, 706, 706, 706, 706, 706, nil, 706, - 706, nil, 706, 706, 706, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 706, nil, nil, 706, nil, nil, - 706, 706, nil, nil, 706, nil, 706, nil, nil, nil, - 706, nil, nil, nil, nil, nil, nil, nil, 706, nil, - nil, nil, nil, 706, 706, 706, 706, 706, 706, nil, - nil, nil, 706, 706, 724, 724, 724, 724, 724, 724, - nil, nil, nil, 724, 724, nil, nil, nil, 724, nil, - 724, 724, 724, 724, 724, 724, 724, nil, nil, nil, - nil, 724, 724, 724, 724, 724, 724, 724, nil, nil, - 724, nil, nil, nil, nil, nil, 724, 724, 724, 724, - 724, 724, 724, 724, 724, 724, 724, 724, 724, 724, - nil, 724, 724, nil, 724, 724, 724, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 724, nil, nil, 724, - nil, nil, 724, 724, nil, nil, 724, nil, 724, nil, - nil, nil, 724, nil, nil, nil, nil, nil, nil, nil, - 724, nil, nil, nil, nil, 724, 724, 724, 724, 724, - 724, nil, nil, nil, 724, 724, 736, 736, 736, 736, - 736, 736, nil, nil, nil, 736, 736, nil, nil, nil, - 736, nil, 736, 736, 736, 736, 736, 736, 736, nil, - nil, nil, nil, 736, 736, 736, 736, 736, 736, 736, - nil, nil, 736, nil, nil, nil, nil, nil, 736, 736, - 736, 736, 736, 736, 736, 736, 736, 736, 736, 736, - 736, 736, nil, 736, 736, nil, 736, 736, 736, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 736, nil, - nil, 736, nil, nil, 736, 736, nil, nil, 736, nil, - 736, nil, nil, nil, 736, nil, nil, nil, nil, nil, - nil, nil, 736, nil, nil, nil, nil, 736, 736, 736, - 736, 736, 736, nil, nil, nil, 736, 736, 737, 737, - 737, 737, 737, 737, nil, nil, nil, 737, 737, nil, - nil, nil, 737, nil, 737, 737, 737, 737, 737, 737, - 737, nil, nil, nil, nil, 737, 737, 737, 737, 737, - 737, 737, nil, nil, 737, nil, nil, nil, nil, nil, - 737, 737, 737, 737, 737, 737, 737, 737, 737, 737, - 737, 737, 737, 737, nil, 737, 737, nil, 737, 737, - 737, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 737, nil, nil, 737, nil, nil, 737, 737, nil, nil, - 737, nil, 737, nil, nil, nil, 737, nil, nil, nil, - nil, nil, nil, nil, 737, nil, nil, nil, nil, 737, - 737, 737, 737, 737, 737, nil, nil, nil, 737, 737, - 741, 741, 741, 741, 741, 741, nil, nil, nil, 741, - 741, nil, nil, nil, 741, nil, 741, 741, 741, 741, - 741, 741, 741, nil, nil, nil, nil, 741, 741, 741, - 741, 741, 741, 741, nil, nil, 741, nil, nil, nil, - nil, nil, 741, 741, 741, 741, 741, 741, 741, 741, - 741, 741, 741, 741, 741, 741, nil, 741, 741, nil, - 741, 741, 741, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 741, nil, nil, 741, nil, nil, 741, 741, - nil, nil, 741, nil, 741, nil, nil, nil, 741, nil, - nil, nil, nil, nil, nil, nil, 741, nil, nil, nil, - nil, 741, 741, 741, 741, 741, 741, nil, nil, nil, - 741, 741, 748, 748, 748, 748, 748, 748, nil, nil, - nil, 748, 748, nil, nil, nil, 748, nil, 748, 748, - 748, 748, 748, 748, 748, nil, nil, nil, nil, 748, - 748, 748, 748, 748, 748, 748, nil, nil, 748, nil, - nil, nil, nil, nil, 748, 748, 748, 748, 748, 748, - 748, 748, 748, 748, 748, 748, 748, 748, nil, 748, - 748, nil, 748, 748, 748, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 748, nil, nil, 748, nil, nil, - 748, 748, nil, nil, 748, nil, 748, nil, nil, nil, - 748, nil, nil, nil, nil, nil, nil, nil, 748, nil, - nil, nil, nil, 748, 748, 748, 748, 748, 748, nil, - nil, nil, 748, 748, 794, 794, 794, 794, 794, 794, - nil, nil, nil, 794, 794, nil, nil, nil, 794, nil, - 794, 794, 794, 794, 794, 794, 794, nil, nil, nil, - nil, 794, 794, 794, 794, 794, 794, 794, nil, nil, - 794, nil, nil, nil, nil, nil, 794, 794, 794, 794, - 794, 794, 794, 794, 794, 794, 794, 794, 794, 794, - nil, 794, 794, nil, 794, 794, 794, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 794, nil, nil, 794, - nil, nil, 794, 794, nil, nil, 794, nil, 794, nil, - nil, nil, 794, nil, nil, nil, nil, nil, nil, nil, - 794, nil, nil, nil, nil, 794, 794, 794, 794, 794, - 794, nil, nil, nil, 794, 794, 838, 838, 838, 838, - 838, 838, nil, nil, nil, 838, 838, nil, nil, nil, - 838, nil, 838, 838, 838, 838, 838, 838, 838, nil, - nil, nil, nil, 838, 838, 838, 838, 838, 838, 838, - nil, nil, 838, nil, nil, nil, nil, nil, 838, 838, - 838, 838, 838, 838, 838, 838, 838, 838, 838, 838, - 838, 838, nil, 838, 838, nil, 838, 838, 838, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 838, nil, - nil, 838, nil, nil, 838, 838, nil, nil, 838, nil, - 838, nil, nil, nil, 838, nil, nil, nil, nil, nil, - nil, nil, 838, nil, nil, nil, nil, 838, 838, 838, - 838, 838, 838, nil, nil, nil, 838, 838, 845, 845, - 845, 845, 845, 845, nil, nil, nil, 845, 845, nil, - nil, nil, 845, nil, 845, 845, 845, 845, 845, 845, - 845, nil, nil, nil, nil, 845, 845, 845, 845, 845, - 845, 845, nil, nil, 845, nil, nil, nil, nil, nil, - 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, - 845, 845, 845, 845, nil, 845, 845, nil, 845, 845, - 845, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 845, nil, nil, 845, nil, nil, 845, 845, nil, nil, - 845, nil, 845, nil, nil, nil, 845, nil, nil, nil, - nil, nil, nil, nil, 845, nil, nil, nil, nil, 845, - 845, 845, 845, 845, 845, nil, nil, nil, 845, 845, - 852, 852, 852, 852, 852, 852, nil, nil, nil, 852, - 852, nil, nil, nil, 852, nil, 852, 852, 852, 852, - 852, 852, 852, nil, nil, nil, nil, 852, 852, 852, - 852, 852, 852, 852, nil, nil, 852, nil, nil, nil, - nil, nil, 852, 852, 852, 852, 852, 852, 852, 852, - 852, 852, 852, 852, 852, 852, nil, 852, 852, nil, - 852, 852, 852, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 852, nil, nil, 852, nil, nil, 852, 852, - nil, nil, 852, nil, 852, nil, nil, nil, 852, nil, - nil, nil, nil, nil, nil, nil, 852, nil, nil, nil, - nil, 852, 852, 852, 852, 852, 852, nil, nil, nil, - 852, 852, 5, 5, 5, 5, 5, nil, nil, nil, - 5, 5, nil, nil, nil, 5, nil, 5, 5, 5, - 5, 5, 5, 5, nil, nil, nil, nil, 5, 5, - 5, 5, 5, 5, 5, nil, nil, 5, nil, nil, - nil, nil, nil, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, nil, 5, 5, - nil, 5, 5, 5, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 5, nil, nil, 5, nil, nil, 5, - 5, nil, nil, 5, nil, 5, nil, nil, nil, 5, - nil, nil, nil, nil, nil, nil, nil, 5, nil, nil, - nil, nil, 5, 5, 5, 5, 5, 5, nil, nil, - nil, 5, 5, 6, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, nil, nil, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 6, nil, - nil, nil, nil, nil, 6, 6, 6, 6, 6, 6, - 6, 6, 6, nil, 6, nil, nil, nil, nil, nil, - nil, nil, 6, 6, nil, 6, 6, 6, 6, nil, - 6, 6, nil, nil, 6, nil, nil, nil, nil, 6, - 6, 6, 6, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 6, 6, nil, 6, - 6, 6, 6, 6, 6, 6, 6, 6, nil, 6, - nil, nil, 6, 6, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 6, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, nil, nil, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - nil, nil, nil, nil, nil, 7, 7, 7, 7, 7, - 7, 7, 7, nil, nil, 7, nil, nil, nil, nil, - nil, nil, nil, 7, 7, nil, 7, 7, 7, 7, - nil, 7, 7, nil, nil, 7, nil, nil, nil, nil, - 7, 7, 7, 7, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 7, 7, nil, - 7, 7, 7, 7, 7, 7, 7, 7, 7, nil, - 7, nil, nil, 7, 7, nil, nil, 17, 17, 17, - nil, 17, nil, nil, 7, 17, 17, nil, nil, nil, - 17, nil, 17, 17, 17, 17, 17, 17, 17, nil, - nil, nil, nil, 17, 17, 17, 17, 17, 17, 17, - nil, nil, 17, nil, nil, nil, nil, nil, nil, 17, - nil, nil, 17, 17, 17, 17, 17, 17, 17, 17, - 17, 17, nil, 17, 17, nil, 17, 17, 17, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 17, nil, - nil, 17, nil, nil, 17, 17, nil, nil, 17, nil, - nil, nil, nil, nil, 17, nil, nil, nil, nil, nil, - nil, nil, 17, nil, nil, nil, nil, 17, 17, 17, - 17, 17, 17, nil, nil, nil, 17, 17, 18, 18, - 18, nil, 18, nil, nil, nil, 18, 18, nil, nil, - nil, 18, nil, 18, 18, 18, 18, 18, 18, 18, - nil, nil, nil, nil, 18, 18, 18, 18, 18, 18, - 18, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 18, nil, nil, 18, 18, 18, 18, 18, 18, 18, - 18, 18, 18, nil, 18, 18, nil, 18, 18, 18, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 18, - nil, nil, 18, nil, nil, 18, 18, nil, nil, 18, - nil, nil, nil, nil, nil, 18, nil, nil, nil, nil, - nil, nil, nil, 18, nil, nil, nil, nil, 18, 18, - 18, 18, 18, 18, nil, nil, nil, 18, 18, 22, - 22, 22, nil, 22, nil, nil, nil, 22, 22, nil, - nil, nil, 22, nil, 22, 22, 22, 22, 22, 22, - 22, nil, nil, nil, nil, 22, 22, 22, 22, 22, - 22, 22, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 22, nil, nil, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, nil, 22, 22, nil, 22, 22, - 22, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 22, nil, nil, 22, nil, nil, 22, 22, nil, nil, - 22, nil, 22, nil, 22, nil, 22, nil, nil, nil, - nil, nil, nil, nil, 22, nil, nil, nil, nil, 22, - 22, 22, 22, 22, 22, nil, nil, nil, 22, 22, - 23, 23, 23, nil, 23, nil, nil, nil, 23, 23, - nil, nil, nil, 23, nil, 23, 23, 23, 23, 23, - 23, 23, nil, nil, nil, nil, 23, 23, 23, 23, - 23, 23, 23, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 23, nil, nil, 23, 23, 23, 23, 23, - 23, 23, 23, 23, 23, nil, 23, 23, nil, 23, - 23, 23, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 23, nil, nil, 23, nil, nil, 23, 23, nil, - nil, 23, nil, 23, nil, 23, nil, 23, nil, nil, - nil, nil, nil, nil, nil, 23, nil, nil, nil, nil, - 23, 23, 23, 23, 23, 23, nil, nil, nil, 23, - 23, 24, 24, 24, nil, 24, nil, nil, nil, 24, - 24, nil, nil, nil, 24, nil, 24, 24, 24, 24, - 24, 24, 24, nil, nil, nil, nil, 24, 24, 24, - 24, 24, 24, 24, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 24, nil, nil, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, nil, 24, 24, nil, - 24, 24, 24, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 24, nil, nil, 24, nil, nil, 24, 24, - nil, nil, 24, nil, 24, nil, 24, nil, 24, nil, - nil, nil, nil, nil, nil, nil, 24, nil, nil, nil, - nil, 24, 24, 24, 24, 24, 24, nil, nil, nil, - 24, 24, 27, 27, 27, nil, 27, nil, nil, nil, - 27, 27, nil, nil, nil, 27, nil, 27, 27, 27, - 27, 27, 27, 27, nil, nil, nil, nil, 27, 27, - 27, 27, 27, 27, 27, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 27, nil, nil, 27, 27, 27, - 27, 27, 27, 27, 27, 27, 27, nil, 27, 27, - nil, 27, 27, 27, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 27, nil, nil, 27, 27, nil, 27, - 27, nil, nil, 27, nil, 27, nil, 27, nil, 27, - nil, nil, nil, nil, nil, nil, nil, 27, nil, nil, - nil, nil, 27, 27, 27, 27, 27, 27, nil, nil, - nil, 27, 27, 28, 28, 28, nil, 28, nil, nil, - nil, 28, 28, nil, nil, nil, 28, nil, 28, 28, - 28, 28, 28, 28, 28, nil, nil, nil, nil, 28, - 28, 28, 28, 28, 28, 28, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 28, nil, nil, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, nil, 28, - 28, nil, 28, 28, 28, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 28, nil, nil, 28, 28, nil, - 28, 28, nil, nil, 28, nil, 28, nil, 28, nil, - 28, nil, nil, nil, nil, nil, nil, nil, 28, nil, - nil, nil, nil, 28, 28, 28, 28, 28, 28, nil, - nil, nil, 28, 28, 31, 31, 31, nil, 31, nil, - nil, nil, 31, 31, nil, nil, nil, 31, nil, 31, - 31, 31, 31, 31, 31, 31, nil, nil, nil, nil, - 31, 31, 31, 31, 31, 31, 31, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 31, nil, nil, 31, - 31, 31, 31, 31, 31, 31, 31, 31, 31, nil, - 31, 31, nil, nil, nil, 31, nil, 828, 828, 828, - 828, 828, 828, 828, 828, 828, 828, 828, nil, 828, - 828, nil, nil, 828, 828, 31, nil, nil, 31, nil, - nil, 31, 31, nil, nil, 31, nil, 31, nil, 828, - nil, 828, nil, 828, 828, 828, 828, 828, 828, 828, - nil, 828, nil, nil, 31, 31, 31, 31, 31, 31, - nil, nil, nil, 31, 31, 32, 32, 32, 828, 32, - 828, nil, nil, 32, 32, nil, nil, nil, 32, nil, - 32, 32, 32, 32, 32, 32, 32, nil, nil, nil, - nil, 32, 32, 32, 32, 32, 32, 32, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 32, nil, nil, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - nil, 32, 32, nil, nil, nil, 32, nil, 19, 19, - 19, 19, 19, 19, 19, 19, 19, 19, 19, nil, - 19, 19, nil, nil, 19, 19, 32, nil, nil, 32, - nil, nil, 32, 32, nil, nil, 32, nil, nil, nil, - 19, nil, 19, nil, 19, 19, 19, 19, 19, 19, - 19, nil, 19, nil, nil, 32, 32, 32, 32, 32, - 32, nil, nil, nil, 32, 32, 38, 38, 38, 19, - 38, nil, nil, nil, 38, 38, nil, nil, nil, 38, - nil, 38, 38, 38, 38, 38, 38, 38, nil, nil, - nil, nil, 38, 38, 38, 38, 38, 38, 38, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 38, nil, - nil, 38, 38, 38, 38, 38, 38, 38, 38, 38, - 38, nil, 38, 38, nil, 38, 38, 38, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 38, nil, nil, - 38, nil, nil, 38, 38, nil, nil, 38, nil, nil, - nil, nil, nil, 38, nil, nil, nil, nil, nil, nil, - nil, 38, nil, nil, nil, nil, 38, 38, 38, 38, - 38, 38, nil, nil, nil, 38, 38, 39, 39, 39, - nil, 39, nil, nil, nil, 39, 39, nil, nil, nil, - 39, nil, 39, 39, 39, 39, 39, 39, 39, nil, - nil, nil, nil, 39, 39, 39, 39, 39, 39, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 39, - nil, nil, 39, 39, 39, 39, 39, 39, 39, 39, - 39, 39, nil, 39, 39, nil, 39, 39, 39, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 39, nil, - nil, 39, nil, nil, 39, 39, nil, nil, 39, nil, - nil, nil, nil, nil, 39, nil, nil, nil, nil, nil, - nil, nil, 39, nil, nil, nil, nil, 39, 39, 39, - 39, 39, 39, nil, nil, nil, 39, 39, 40, 40, - 40, nil, 40, nil, nil, nil, 40, 40, nil, nil, - nil, 40, nil, 40, 40, 40, 40, 40, 40, 40, - nil, nil, nil, nil, 40, 40, 40, 40, 40, 40, - 40, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 40, nil, nil, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, nil, 40, 40, nil, 40, 40, 40, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 40, - nil, nil, 40, nil, nil, 40, 40, nil, nil, 40, - nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, nil, 40, nil, nil, nil, nil, 40, 40, - 40, 40, 40, 40, nil, nil, nil, 40, 40, 52, - 52, 52, nil, 52, nil, nil, nil, 52, 52, nil, - nil, nil, 52, nil, 52, 52, 52, 52, 52, 52, - 52, nil, nil, nil, nil, 52, 52, 52, 52, 52, - 52, 52, nil, nil, 52, nil, nil, nil, nil, nil, - nil, 52, nil, nil, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 52, nil, 52, 52, nil, 52, 52, - 52, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 52, nil, nil, 52, nil, nil, 52, 52, nil, nil, - 52, nil, nil, nil, nil, nil, 52, nil, nil, nil, - nil, nil, nil, nil, 52, nil, nil, nil, nil, 52, - 52, 52, 52, 52, 52, nil, nil, nil, 52, 52, - 53, 53, 53, nil, 53, nil, nil, nil, 53, 53, - nil, nil, nil, 53, nil, 53, 53, 53, 53, 53, - 53, 53, nil, nil, nil, nil, 53, 53, 53, 53, - 53, 53, 53, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 53, nil, nil, 53, 53, 53, 53, 53, - 53, 53, 53, 53, 53, nil, 53, 53, nil, 53, - 53, 53, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 53, nil, nil, 53, nil, nil, 53, 53, nil, - nil, 53, nil, 53, nil, nil, nil, 53, nil, nil, - nil, nil, nil, nil, nil, 53, nil, nil, nil, nil, - 53, 53, 53, 53, 53, 53, nil, nil, nil, 53, - 53, 54, 54, 54, nil, 54, nil, nil, nil, 54, - 54, nil, nil, nil, 54, nil, 54, 54, 54, 54, - 54, 54, 54, nil, nil, nil, nil, 54, 54, 54, - 54, 54, 54, 54, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 54, nil, nil, 54, 54, 54, 54, - 54, 54, 54, 54, 54, 54, nil, 54, 54, nil, - 54, 54, 54, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 54, nil, nil, 54, nil, nil, 54, 54, - nil, nil, 54, nil, nil, nil, nil, nil, 54, nil, - nil, nil, nil, nil, nil, nil, 54, nil, nil, nil, - nil, 54, 54, 54, 54, 54, 54, nil, nil, nil, - 54, 54, 56, 56, 56, nil, 56, nil, nil, nil, - 56, 56, nil, nil, nil, 56, nil, 56, 56, 56, - 56, 56, 56, 56, nil, nil, nil, nil, 56, 56, - 56, 56, 56, 56, 56, nil, nil, 56, nil, nil, - nil, nil, nil, nil, 56, nil, nil, 56, 56, 56, - 56, 56, 56, 56, 56, 56, 56, nil, 56, 56, - nil, 56, 56, 56, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 56, nil, nil, 56, nil, nil, 56, - 56, nil, nil, 56, nil, nil, nil, nil, nil, 56, - nil, nil, nil, nil, nil, nil, nil, 56, nil, nil, - nil, nil, 56, 56, 56, 56, 56, 56, nil, nil, - nil, 56, 56, 57, 57, 57, nil, 57, nil, nil, - nil, 57, 57, nil, nil, nil, 57, nil, 57, 57, - 57, 57, 57, 57, 57, nil, nil, nil, nil, 57, - 57, 57, 57, 57, 57, 57, nil, nil, 57, nil, - nil, nil, nil, nil, nil, 57, nil, nil, 57, 57, - 57, 57, 57, 57, 57, 57, 57, 57, nil, 57, - 57, nil, 57, 57, 57, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 57, nil, nil, 57, nil, nil, - 57, 57, nil, nil, 57, nil, nil, nil, nil, nil, - 57, nil, nil, nil, nil, nil, nil, nil, 57, nil, - nil, nil, nil, 57, 57, 57, 57, 57, 57, nil, - nil, nil, 57, 57, 61, 61, 61, nil, 61, nil, - nil, nil, 61, 61, nil, nil, nil, 61, nil, 61, - 61, 61, 61, 61, 61, 61, nil, nil, nil, nil, - 61, 61, 61, 61, 61, 61, 61, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 61, nil, nil, 61, - 61, 61, 61, 61, 61, 61, 61, 61, 61, nil, - 61, 61, nil, nil, nil, 61, nil, 237, 237, 237, - 237, 237, 237, 237, 237, 237, 237, 237, nil, 237, - 237, nil, nil, 237, 237, 61, nil, nil, 61, nil, - nil, 61, 61, nil, nil, 61, nil, 61, nil, 237, - nil, 237, nil, 237, 237, 237, 237, 237, 237, 237, - nil, 237, nil, nil, 61, 61, 61, 61, 61, 61, - nil, nil, nil, 61, 61, 62, 62, 62, 237, 62, - nil, nil, nil, 62, 62, nil, nil, nil, 62, nil, - 62, 62, 62, 62, 62, 62, 62, nil, nil, nil, - nil, 62, 62, 62, 62, 62, 62, 62, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 62, nil, nil, - 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, - nil, 62, 62, nil, nil, nil, 62, nil, 374, 374, - 374, 374, 374, 374, 374, 374, 374, 374, 374, nil, - 374, 374, nil, 62, 374, 374, 62, nil, nil, 62, - nil, nil, 62, 62, nil, nil, 62, nil, nil, nil, - 374, nil, 374, nil, 374, 374, 374, 374, 374, 374, - 374, nil, 374, nil, nil, 62, 62, 62, 62, 62, - 62, nil, nil, nil, 62, 62, 63, 63, 63, 374, - 63, nil, nil, nil, 63, 63, nil, nil, nil, 63, - nil, 63, 63, 63, 63, 63, 63, 63, nil, nil, - nil, nil, 63, 63, 63, 63, 63, 63, 63, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 63, nil, - nil, 63, 63, 63, 63, 63, 63, 63, 63, 63, - 63, nil, 63, 63, nil, nil, nil, 63, nil, 388, - 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, - nil, 388, 388, nil, nil, 388, 388, 63, nil, nil, - 63, nil, nil, 63, 63, nil, nil, 63, nil, nil, - nil, 388, nil, 388, nil, 388, 388, 388, 388, 388, - 388, 388, nil, 388, nil, nil, 63, 63, 63, 63, - 63, 63, nil, nil, nil, 63, 63, 82, 82, 82, - 388, 82, nil, nil, nil, 82, 82, nil, nil, nil, - 82, nil, 82, 82, 82, 82, 82, 82, 82, nil, - 82, nil, nil, 82, 82, 82, 82, 82, 82, 82, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 82, - nil, nil, 82, 82, 82, 82, 82, 82, 82, 82, - 82, 82, nil, 82, 82, nil, 82, 82, 82, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 82, nil, - nil, 82, 82, nil, 82, 82, nil, nil, 82, nil, - 82, nil, 82, nil, 82, nil, nil, nil, nil, nil, - nil, nil, 82, nil, 82, nil, nil, 82, 82, 82, - 82, 82, 82, nil, nil, nil, 82, 82, 86, 86, - 86, nil, 86, nil, nil, nil, 86, 86, nil, nil, - nil, 86, nil, 86, 86, 86, 86, 86, 86, 86, - nil, 86, nil, nil, 86, 86, 86, 86, 86, 86, - 86, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 86, nil, nil, 86, 86, 86, 86, 86, 86, 86, - 86, 86, 86, nil, 86, 86, nil, 86, 86, 86, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 86, - nil, nil, 86, 86, nil, 86, 86, nil, nil, 86, - nil, 86, nil, 86, nil, 86, nil, nil, nil, nil, - nil, nil, nil, 86, nil, 86, nil, nil, 86, 86, - 86, 86, 86, 86, nil, nil, nil, 86, 86, 101, - 101, 101, nil, 101, nil, nil, nil, 101, 101, nil, - nil, nil, 101, nil, 101, 101, 101, 101, 101, 101, - 101, nil, nil, nil, nil, 101, 101, 101, 101, 101, - 101, 101, nil, nil, 101, nil, nil, nil, nil, nil, - nil, 101, nil, nil, 101, 101, 101, 101, 101, 101, - 101, 101, 101, 101, nil, 101, 101, nil, 101, 101, - 101, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 101, nil, nil, 101, nil, nil, 101, 101, nil, nil, - 101, nil, nil, nil, nil, nil, 101, nil, nil, nil, - nil, nil, nil, nil, 101, nil, nil, nil, nil, 101, - 101, 101, 101, 101, 101, nil, nil, nil, 101, 101, - 102, 102, 102, nil, 102, nil, nil, nil, 102, 102, - nil, nil, nil, 102, nil, 102, 102, 102, 102, 102, - 102, 102, nil, nil, nil, nil, 102, 102, 102, 102, - 102, 102, 102, nil, nil, 102, nil, nil, nil, nil, - nil, nil, 102, nil, nil, 102, 102, 102, 102, 102, - 102, 102, 102, 102, 102, nil, 102, 102, nil, 102, - 102, 102, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 102, nil, nil, 102, nil, nil, 102, 102, nil, - nil, 102, nil, nil, nil, nil, nil, 102, nil, nil, - nil, nil, nil, nil, nil, 102, nil, nil, nil, nil, - 102, 102, 102, 102, 102, 102, nil, nil, nil, 102, - 102, 103, 103, 103, nil, 103, nil, nil, nil, 103, - 103, nil, nil, nil, 103, nil, 103, 103, 103, 103, - 103, 103, 103, nil, nil, nil, nil, 103, 103, 103, - 103, 103, 103, 103, nil, nil, 103, nil, nil, nil, - nil, nil, nil, 103, nil, nil, 103, 103, 103, 103, - 103, 103, 103, 103, 103, 103, nil, 103, 103, nil, - 103, 103, 103, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 103, nil, nil, 103, nil, nil, 103, 103, - nil, nil, 103, nil, nil, nil, nil, nil, 103, nil, - nil, nil, nil, nil, nil, nil, 103, nil, nil, nil, - nil, 103, 103, 103, 103, 103, 103, nil, nil, nil, - 103, 103, 104, 104, 104, nil, 104, nil, nil, nil, - 104, 104, nil, nil, nil, 104, nil, 104, 104, 104, - 104, 104, 104, 104, nil, nil, nil, nil, 104, 104, - 104, 104, 104, 104, 104, nil, nil, 104, nil, nil, - nil, nil, nil, nil, 104, nil, nil, 104, 104, 104, - 104, 104, 104, 104, 104, 104, 104, nil, 104, 104, - nil, 104, 104, 104, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 104, nil, nil, 104, nil, nil, 104, - 104, nil, nil, 104, nil, nil, nil, nil, nil, 104, - nil, nil, nil, nil, nil, nil, nil, 104, nil, nil, - nil, nil, 104, 104, 104, 104, 104, 104, nil, nil, - nil, 104, 104, 105, 105, 105, 105, 105, nil, nil, - nil, 105, 105, nil, nil, nil, 105, nil, 105, 105, - 105, 105, 105, 105, 105, nil, nil, nil, nil, 105, - 105, 105, 105, 105, 105, 105, nil, nil, 105, nil, - nil, nil, nil, nil, 105, 105, 105, 105, 105, 105, - 105, 105, 105, 105, 105, 105, 105, 105, nil, 105, - 105, nil, 105, 105, 105, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 105, nil, nil, 105, nil, nil, - 105, 105, nil, nil, 105, nil, 105, nil, nil, nil, - 105, nil, nil, nil, nil, nil, nil, nil, 105, nil, - nil, nil, nil, 105, 105, 105, 105, 105, 105, nil, - nil, nil, 105, 105, 188, 188, 188, nil, 188, nil, - nil, nil, 188, 188, nil, nil, nil, 188, nil, 188, - 188, 188, 188, 188, 188, 188, nil, nil, nil, nil, - 188, 188, 188, 188, 188, 188, 188, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 188, nil, nil, 188, - 188, 188, 188, 188, 188, 188, 188, 188, 188, nil, - 188, 188, nil, 188, 188, 188, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 188, nil, nil, 188, nil, - nil, 188, 188, nil, nil, 188, nil, 188, nil, nil, - nil, 188, nil, nil, nil, nil, nil, nil, nil, 188, - nil, nil, nil, nil, 188, 188, 188, 188, 188, 188, - nil, nil, nil, 188, 188, 189, 189, 189, nil, 189, - nil, nil, nil, 189, 189, nil, nil, nil, 189, nil, - 189, 189, 189, 189, 189, 189, 189, nil, nil, nil, - nil, 189, 189, 189, 189, 189, 189, 189, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 189, nil, nil, - 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, - nil, 189, 189, nil, 189, 189, 189, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 189, nil, nil, 189, - nil, nil, 189, 189, nil, nil, 189, nil, 189, nil, - nil, nil, 189, nil, nil, nil, nil, nil, nil, nil, - 189, nil, nil, nil, nil, 189, 189, 189, 189, 189, - 189, nil, nil, nil, 189, 189, 190, 190, 190, nil, - 190, nil, nil, nil, 190, 190, nil, nil, nil, 190, - nil, 190, 190, 190, 190, 190, 190, 190, nil, nil, - nil, nil, 190, 190, 190, 190, 190, 190, 190, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 190, nil, - nil, 190, 190, 190, 190, 190, 190, 190, 190, 190, - 190, nil, 190, 190, nil, 190, 190, 190, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 190, nil, nil, - 190, nil, nil, 190, 190, nil, nil, 190, nil, nil, - nil, nil, nil, 190, nil, nil, nil, nil, nil, nil, - nil, 190, nil, nil, nil, nil, 190, 190, 190, 190, - 190, 190, nil, nil, nil, 190, 190, 191, 191, 191, - nil, 191, nil, nil, nil, 191, 191, nil, nil, nil, - 191, nil, 191, 191, 191, 191, 191, 191, 191, nil, - nil, nil, nil, 191, 191, 191, 191, 191, 191, 191, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 191, - nil, nil, 191, 191, 191, 191, 191, 191, 191, 191, - 191, 191, nil, 191, 191, nil, 191, 191, 191, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 191, nil, - nil, 191, nil, nil, 191, 191, nil, nil, 191, nil, - 191, nil, nil, nil, 191, nil, nil, nil, nil, nil, - nil, nil, 191, nil, nil, nil, nil, 191, 191, 191, - 191, 191, 191, nil, nil, nil, 191, 191, 194, 194, - 194, nil, 194, nil, nil, nil, 194, 194, nil, nil, - nil, 194, nil, 194, 194, 194, 194, 194, 194, 194, - nil, nil, nil, nil, 194, 194, 194, 194, 194, 194, - 194, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 194, nil, nil, 194, 194, 194, 194, 194, 194, 194, - 194, 194, 194, nil, 194, 194, nil, 194, 194, 194, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 194, - nil, nil, 194, nil, nil, 194, 194, nil, nil, 194, - nil, nil, nil, nil, nil, 194, nil, nil, nil, nil, - nil, nil, nil, 194, nil, nil, nil, nil, 194, 194, - 194, 194, 194, 194, nil, nil, nil, 194, 194, 195, - 195, 195, nil, 195, nil, nil, nil, 195, 195, nil, - nil, nil, 195, nil, 195, 195, 195, 195, 195, 195, - 195, nil, nil, nil, nil, 195, 195, 195, 195, 195, - 195, 195, nil, nil, 195, nil, nil, nil, nil, nil, - nil, 195, nil, nil, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, nil, 195, 195, nil, 195, 195, - 195, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 195, nil, nil, 195, nil, nil, 195, 195, nil, nil, - 195, nil, nil, nil, nil, nil, 195, nil, nil, nil, - nil, nil, nil, nil, 195, nil, nil, nil, nil, 195, - 195, 195, 195, 195, 195, nil, nil, nil, 195, 195, - 196, 196, 196, nil, 196, nil, nil, nil, 196, 196, - nil, nil, nil, 196, nil, 196, 196, 196, 196, 196, - 196, 196, nil, nil, nil, nil, 196, 196, 196, 196, - 196, 196, 196, nil, nil, 196, nil, nil, nil, nil, - nil, nil, 196, nil, nil, 196, 196, 196, 196, 196, - 196, 196, 196, 196, 196, nil, 196, 196, nil, 196, - 196, 196, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 196, nil, nil, 196, nil, nil, 196, 196, nil, - nil, 196, nil, nil, nil, nil, nil, 196, nil, nil, - nil, nil, nil, nil, nil, 196, nil, nil, nil, nil, - 196, 196, 196, 196, 196, 196, nil, nil, nil, 196, - 196, 207, 207, 207, nil, 207, nil, nil, nil, 207, - 207, nil, nil, nil, 207, nil, 207, 207, 207, 207, - 207, 207, 207, nil, nil, nil, nil, 207, 207, 207, - 207, 207, 207, 207, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 207, nil, nil, 207, 207, 207, 207, - 207, 207, 207, 207, 207, 207, nil, 207, 207, nil, - 207, 207, 207, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 207, nil, nil, 207, nil, nil, 207, 207, - nil, nil, 207, nil, nil, nil, nil, nil, 207, nil, - nil, nil, nil, nil, nil, nil, 207, nil, nil, nil, - nil, 207, 207, 207, 207, 207, 207, nil, nil, nil, - 207, 207, 208, 208, 208, nil, 208, nil, nil, nil, - 208, 208, nil, nil, nil, 208, nil, 208, 208, 208, - 208, 208, 208, 208, nil, nil, nil, nil, 208, 208, - 208, 208, 208, 208, 208, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 208, nil, nil, 208, 208, 208, - 208, 208, 208, 208, 208, 208, 208, nil, 208, 208, - nil, 208, 208, 208, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 208, nil, nil, 208, nil, nil, 208, - 208, nil, nil, 208, nil, nil, nil, nil, nil, 208, - nil, nil, nil, nil, nil, nil, nil, 208, nil, nil, - nil, nil, 208, 208, 208, 208, 208, 208, nil, nil, - nil, 208, 208, 209, 209, 209, nil, 209, nil, nil, - nil, 209, 209, nil, nil, nil, 209, nil, 209, 209, - 209, 209, 209, 209, 209, nil, nil, nil, nil, 209, - 209, 209, 209, 209, 209, 209, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 209, nil, nil, 209, 209, - 209, 209, 209, 209, 209, 209, 209, 209, nil, 209, - 209, nil, 209, 209, 209, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 209, nil, nil, 209, nil, nil, - 209, 209, nil, nil, 209, nil, nil, nil, nil, nil, - 209, nil, nil, nil, nil, nil, nil, nil, 209, nil, - nil, nil, nil, 209, 209, 209, 209, 209, 209, nil, - nil, nil, 209, 209, 210, 210, 210, nil, 210, nil, - nil, nil, 210, 210, nil, nil, nil, 210, nil, 210, - 210, 210, 210, 210, 210, 210, nil, nil, nil, nil, - 210, 210, 210, 210, 210, 210, 210, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 210, nil, nil, 210, - 210, 210, 210, 210, 210, 210, 210, 210, 210, nil, - 210, 210, nil, 210, 210, 210, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 210, nil, nil, 210, nil, - nil, 210, 210, nil, nil, 210, nil, nil, nil, nil, - nil, 210, nil, nil, nil, nil, nil, nil, nil, 210, - nil, nil, nil, nil, 210, 210, 210, 210, 210, 210, - nil, nil, nil, 210, 210, 211, 211, 211, nil, 211, - nil, nil, nil, 211, 211, nil, nil, nil, 211, nil, - 211, 211, 211, 211, 211, 211, 211, nil, nil, nil, - nil, 211, 211, 211, 211, 211, 211, 211, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 211, nil, nil, - 211, 211, 211, 211, 211, 211, 211, 211, 211, 211, - nil, 211, 211, nil, 211, 211, 211, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 211, nil, nil, 211, - nil, nil, 211, 211, nil, nil, 211, nil, nil, nil, - nil, nil, 211, nil, nil, nil, nil, nil, nil, nil, - 211, nil, nil, nil, nil, 211, 211, 211, 211, 211, - 211, nil, nil, nil, 211, 211, 212, 212, 212, nil, - 212, nil, nil, nil, 212, 212, nil, nil, nil, 212, - nil, 212, 212, 212, 212, 212, 212, 212, nil, nil, - nil, nil, 212, 212, 212, 212, 212, 212, 212, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 212, nil, - nil, 212, 212, 212, 212, 212, 212, 212, 212, 212, - 212, nil, 212, 212, nil, 212, 212, 212, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 212, nil, nil, - 212, nil, nil, 212, 212, nil, nil, 212, nil, nil, - nil, nil, nil, 212, nil, nil, nil, nil, nil, nil, - nil, 212, nil, nil, nil, nil, 212, 212, 212, 212, - 212, 212, nil, nil, nil, 212, 212, 213, 213, 213, - nil, 213, nil, nil, nil, 213, 213, nil, nil, nil, - 213, nil, 213, 213, 213, 213, 213, 213, 213, nil, - nil, nil, nil, 213, 213, 213, 213, 213, 213, 213, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 213, - nil, nil, 213, 213, 213, 213, 213, 213, 213, 213, - 213, 213, nil, 213, 213, nil, 213, 213, 213, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 213, nil, - nil, 213, nil, nil, 213, 213, nil, nil, 213, nil, - nil, nil, nil, nil, 213, nil, nil, nil, nil, nil, - nil, nil, 213, nil, nil, nil, nil, 213, 213, 213, - 213, 213, 213, nil, nil, nil, 213, 213, 214, 214, - 214, nil, 214, nil, nil, nil, 214, 214, nil, nil, - nil, 214, nil, 214, 214, 214, 214, 214, 214, 214, - nil, nil, nil, nil, 214, 214, 214, 214, 214, 214, - 214, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 214, nil, nil, 214, 214, 214, 214, 214, 214, 214, - 214, 214, 214, nil, 214, 214, nil, 214, 214, 214, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 214, - nil, nil, 214, nil, nil, 214, 214, nil, nil, 214, - nil, nil, nil, nil, nil, 214, nil, nil, nil, nil, - nil, nil, nil, 214, nil, nil, nil, nil, 214, 214, - 214, 214, 214, 214, nil, nil, nil, 214, 214, 215, - 215, 215, nil, 215, nil, nil, nil, 215, 215, nil, - nil, nil, 215, nil, 215, 215, 215, 215, 215, 215, - 215, nil, nil, nil, nil, 215, 215, 215, 215, 215, - 215, 215, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 215, nil, nil, 215, 215, 215, 215, 215, 215, - 215, 215, 215, 215, nil, 215, 215, nil, 215, 215, - 215, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 215, nil, nil, 215, nil, nil, 215, 215, nil, nil, - 215, nil, nil, nil, nil, nil, 215, nil, nil, nil, - nil, nil, nil, nil, 215, nil, nil, nil, nil, 215, - 215, 215, 215, 215, 215, nil, nil, nil, 215, 215, - 216, 216, 216, nil, 216, nil, nil, nil, 216, 216, - nil, nil, nil, 216, nil, 216, 216, 216, 216, 216, - 216, 216, nil, nil, nil, nil, 216, 216, 216, 216, - 216, 216, 216, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 216, nil, nil, 216, 216, 216, 216, 216, - 216, 216, 216, 216, 216, nil, 216, 216, nil, 216, - 216, 216, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 216, nil, nil, 216, nil, nil, 216, 216, nil, - nil, 216, nil, nil, nil, nil, nil, 216, nil, nil, - nil, nil, nil, nil, nil, 216, nil, nil, nil, nil, - 216, 216, 216, 216, 216, 216, nil, nil, nil, 216, - 216, 217, 217, 217, nil, 217, nil, nil, nil, 217, - 217, nil, nil, nil, 217, nil, 217, 217, 217, 217, - 217, 217, 217, nil, nil, nil, nil, 217, 217, 217, - 217, 217, 217, 217, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 217, nil, nil, 217, 217, 217, 217, - 217, 217, 217, 217, 217, 217, nil, 217, 217, nil, - 217, 217, 217, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 217, nil, nil, 217, nil, nil, 217, 217, - nil, nil, 217, nil, nil, nil, nil, nil, 217, nil, - nil, nil, nil, nil, nil, nil, 217, nil, nil, nil, - nil, 217, 217, 217, 217, 217, 217, nil, nil, nil, - 217, 217, 218, 218, 218, nil, 218, nil, nil, nil, - 218, 218, nil, nil, nil, 218, nil, 218, 218, 218, - 218, 218, 218, 218, nil, nil, nil, nil, 218, 218, - 218, 218, 218, 218, 218, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 218, nil, nil, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, nil, 218, 218, - nil, 218, 218, 218, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 218, nil, nil, 218, nil, nil, 218, - 218, nil, nil, 218, nil, nil, nil, nil, nil, 218, - nil, nil, nil, nil, nil, nil, nil, 218, nil, nil, - nil, nil, 218, 218, 218, 218, 218, 218, nil, nil, - nil, 218, 218, 219, 219, 219, nil, 219, nil, nil, - nil, 219, 219, nil, nil, nil, 219, nil, 219, 219, - 219, 219, 219, 219, 219, nil, nil, nil, nil, 219, - 219, 219, 219, 219, 219, 219, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 219, nil, nil, 219, 219, - 219, 219, 219, 219, 219, 219, 219, 219, nil, 219, - 219, nil, 219, 219, 219, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 219, nil, nil, 219, nil, nil, - 219, 219, nil, nil, 219, nil, nil, nil, nil, nil, - 219, nil, nil, nil, nil, nil, nil, nil, 219, nil, - nil, nil, nil, 219, 219, 219, 219, 219, 219, nil, - nil, nil, 219, 219, 220, 220, 220, nil, 220, nil, - nil, nil, 220, 220, nil, nil, nil, 220, nil, 220, - 220, 220, 220, 220, 220, 220, nil, nil, nil, nil, - 220, 220, 220, 220, 220, 220, 220, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 220, nil, nil, 220, - 220, 220, 220, 220, 220, 220, 220, 220, 220, nil, - 220, 220, nil, 220, 220, 220, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 220, nil, nil, 220, nil, - nil, 220, 220, nil, nil, 220, nil, nil, nil, nil, - nil, 220, nil, nil, nil, nil, nil, nil, nil, 220, - nil, nil, nil, nil, 220, 220, 220, 220, 220, 220, - nil, nil, nil, 220, 220, 221, 221, 221, nil, 221, - nil, nil, nil, 221, 221, nil, nil, nil, 221, nil, - 221, 221, 221, 221, 221, 221, 221, nil, nil, nil, - nil, 221, 221, 221, 221, 221, 221, 221, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 221, nil, nil, - 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, - nil, 221, 221, nil, 221, 221, 221, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 221, nil, nil, 221, - nil, nil, 221, 221, nil, nil, 221, nil, nil, nil, - nil, nil, 221, nil, nil, nil, nil, nil, nil, nil, - 221, nil, nil, nil, nil, 221, 221, 221, 221, 221, - 221, nil, nil, nil, 221, 221, 222, 222, 222, nil, - 222, nil, nil, nil, 222, 222, nil, nil, nil, 222, - nil, 222, 222, 222, 222, 222, 222, 222, nil, nil, - nil, nil, 222, 222, 222, 222, 222, 222, 222, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 222, nil, - nil, 222, 222, 222, 222, 222, 222, 222, 222, 222, - 222, nil, 222, 222, nil, 222, 222, 222, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 222, nil, nil, - 222, nil, nil, 222, 222, nil, nil, 222, nil, nil, - nil, nil, nil, 222, nil, nil, nil, nil, nil, nil, - nil, 222, nil, nil, nil, nil, 222, 222, 222, 222, - 222, 222, nil, nil, nil, 222, 222, 223, 223, 223, - nil, 223, nil, nil, nil, 223, 223, nil, nil, nil, - 223, nil, 223, 223, 223, 223, 223, 223, 223, nil, - nil, nil, nil, 223, 223, 223, 223, 223, 223, 223, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 223, - nil, nil, 223, 223, 223, 223, 223, 223, 223, 223, - 223, 223, nil, 223, 223, nil, 223, 223, 223, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 223, nil, nil, 223, 223, nil, nil, 223, nil, - nil, nil, nil, nil, 223, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, nil, nil, 223, 223, 223, - 223, 223, 223, nil, nil, nil, 223, 223, 224, 224, - 224, nil, 224, nil, nil, nil, 224, 224, nil, nil, - nil, 224, nil, 224, 224, 224, 224, 224, 224, 224, - nil, nil, nil, nil, 224, 224, 224, 224, 224, 224, - 224, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 224, nil, nil, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, nil, 224, 224, nil, 224, 224, 224, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 224, - nil, nil, 224, nil, nil, 224, 224, nil, nil, 224, - nil, nil, nil, nil, nil, 224, nil, nil, nil, nil, - nil, nil, nil, 224, nil, nil, nil, nil, 224, 224, - 224, 224, 224, 224, nil, nil, nil, 224, 224, 225, - 225, 225, nil, 225, nil, nil, nil, 225, 225, nil, - nil, nil, 225, nil, 225, 225, 225, 225, 225, 225, - 225, nil, nil, nil, nil, 225, 225, 225, 225, 225, - 225, 225, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 225, nil, nil, 225, 225, 225, 225, 225, 225, - 225, 225, 225, 225, nil, 225, 225, nil, 225, 225, - 225, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 225, nil, nil, 225, nil, nil, 225, 225, nil, nil, - 225, nil, nil, nil, nil, nil, 225, nil, nil, nil, - nil, nil, nil, nil, 225, nil, nil, nil, nil, 225, - 225, 225, 225, 225, 225, nil, nil, nil, 225, 225, - 226, 226, 226, nil, 226, nil, nil, nil, 226, 226, - nil, nil, nil, 226, nil, 226, 226, 226, 226, 226, - 226, 226, nil, nil, nil, nil, 226, 226, 226, 226, - 226, 226, 226, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 226, nil, nil, 226, 226, 226, 226, 226, - 226, 226, 226, 226, 226, nil, 226, 226, nil, 226, - 226, 226, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 226, nil, nil, 226, nil, nil, 226, 226, nil, - nil, 226, nil, nil, nil, nil, nil, 226, nil, nil, - nil, nil, nil, nil, nil, 226, nil, nil, nil, nil, - 226, 226, 226, 226, 226, 226, nil, nil, nil, 226, - 226, 227, 227, 227, nil, 227, nil, nil, nil, 227, - 227, nil, nil, nil, 227, nil, 227, 227, 227, 227, - 227, 227, 227, nil, nil, nil, nil, 227, 227, 227, - 227, 227, 227, 227, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 227, nil, nil, 227, 227, 227, 227, - 227, 227, 227, 227, 227, 227, nil, 227, 227, nil, - 227, 227, 227, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 227, nil, nil, 227, nil, nil, 227, 227, - nil, nil, 227, nil, nil, nil, nil, nil, 227, nil, - nil, nil, nil, nil, nil, nil, 227, nil, nil, nil, - nil, 227, 227, 227, 227, 227, 227, nil, nil, nil, - 227, 227, 228, 228, 228, nil, 228, nil, nil, nil, - 228, 228, nil, nil, nil, 228, nil, 228, 228, 228, - 228, 228, 228, 228, nil, nil, nil, nil, 228, 228, - 228, 228, 228, 228, 228, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 228, nil, nil, 228, 228, 228, - 228, 228, 228, 228, 228, 228, 228, nil, 228, 228, - nil, 228, 228, 228, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, 228, nil, nil, 228, - 228, nil, nil, 228, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 228, 228, 228, 228, 228, 228, nil, nil, - nil, 228, 228, 229, 229, 229, nil, 229, nil, nil, - nil, 229, 229, nil, nil, nil, 229, nil, 229, 229, - 229, 229, 229, 229, 229, nil, nil, nil, nil, 229, - 229, 229, 229, 229, 229, 229, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 229, nil, nil, 229, 229, - 229, 229, 229, 229, 229, 229, 229, 229, nil, 229, - 229, nil, 229, 229, 229, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 229, nil, nil, 229, nil, nil, - 229, 229, nil, nil, 229, nil, nil, nil, nil, nil, - 229, nil, nil, nil, nil, nil, nil, nil, 229, nil, - nil, nil, nil, 229, 229, 229, 229, 229, 229, nil, - nil, nil, 229, 229, 230, 230, 230, nil, 230, nil, - nil, nil, 230, 230, nil, nil, nil, 230, nil, 230, - 230, 230, 230, 230, 230, 230, nil, nil, nil, nil, - 230, 230, 230, 230, 230, 230, 230, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 230, nil, nil, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, nil, - 230, 230, nil, 230, 230, 230, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 230, nil, nil, 230, nil, - nil, 230, 230, nil, nil, 230, nil, nil, nil, nil, - nil, 230, nil, nil, nil, nil, nil, nil, nil, 230, - nil, nil, nil, nil, 230, 230, 230, 230, 230, 230, - nil, nil, nil, 230, 230, 231, 231, 231, nil, 231, - nil, nil, nil, 231, 231, nil, nil, nil, 231, nil, - 231, 231, 231, 231, 231, 231, 231, nil, nil, nil, - nil, 231, 231, 231, 231, 231, 231, 231, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 231, nil, nil, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - nil, 231, 231, nil, 231, 231, 231, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 231, nil, nil, 231, - nil, nil, 231, 231, nil, nil, 231, nil, nil, nil, - nil, nil, 231, nil, nil, nil, nil, nil, nil, nil, - 231, nil, nil, nil, nil, 231, 231, 231, 231, 231, - 231, nil, nil, nil, 231, 231, 232, 232, 232, nil, - 232, nil, nil, nil, 232, 232, nil, nil, nil, 232, - nil, 232, 232, 232, 232, 232, 232, 232, nil, nil, - nil, nil, 232, 232, 232, 232, 232, 232, 232, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 232, nil, - nil, 232, 232, 232, 232, 232, 232, 232, 232, 232, - 232, nil, 232, 232, nil, 232, 232, 232, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 232, nil, nil, - 232, nil, nil, 232, 232, nil, nil, 232, nil, nil, - nil, nil, nil, 232, nil, nil, nil, nil, nil, nil, - nil, 232, nil, nil, nil, nil, 232, 232, 232, 232, - 232, 232, nil, nil, nil, 232, 232, 233, 233, 233, - nil, 233, nil, nil, nil, 233, 233, nil, nil, nil, - 233, nil, 233, 233, 233, 233, 233, 233, 233, nil, - nil, nil, nil, 233, 233, 233, 233, 233, 233, 233, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 233, - nil, nil, 233, 233, 233, 233, 233, 233, 233, 233, - 233, 233, nil, 233, 233, nil, 233, 233, 233, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 233, nil, - nil, 233, nil, nil, 233, 233, nil, nil, 233, nil, - nil, nil, nil, nil, 233, nil, nil, nil, nil, nil, - nil, nil, 233, nil, nil, nil, nil, 233, 233, 233, - 233, 233, 233, nil, nil, nil, 233, 233, 241, 241, - 241, nil, 241, nil, nil, nil, 241, 241, nil, nil, - nil, 241, nil, 241, 241, 241, 241, 241, 241, 241, - nil, nil, nil, nil, 241, 241, 241, 241, 241, 241, - 241, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 241, nil, nil, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, nil, 241, 241, nil, 241, 241, 241, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 241, - nil, nil, 241, nil, nil, 241, 241, nil, nil, 241, - nil, nil, nil, nil, nil, 241, nil, nil, nil, nil, - nil, nil, nil, 241, nil, nil, nil, nil, 241, 241, - 241, 241, 241, 241, nil, nil, nil, 241, 241, 243, - 243, 243, nil, 243, nil, nil, nil, 243, 243, nil, - nil, nil, 243, nil, 243, 243, 243, 243, 243, 243, - 243, nil, nil, nil, nil, 243, 243, 243, 243, 243, - 243, 243, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 243, nil, nil, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, nil, 243, 243, nil, 243, 243, - 243, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 243, nil, nil, 243, nil, nil, 243, 243, nil, nil, - 243, nil, nil, nil, nil, nil, 243, nil, nil, nil, - nil, nil, nil, nil, 243, nil, nil, nil, nil, 243, - 243, 243, 243, 243, 243, nil, nil, nil, 243, 243, - 254, 254, 254, nil, 254, nil, nil, nil, 254, 254, - nil, nil, nil, 254, nil, 254, 254, 254, 254, 254, - 254, 254, nil, nil, nil, nil, 254, 254, 254, 254, - 254, 254, 254, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 254, nil, nil, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, nil, 254, 254, nil, 254, - 254, 254, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 254, nil, nil, 254, nil, nil, 254, 254, nil, - nil, 254, nil, 254, nil, 254, nil, 254, nil, nil, - nil, nil, nil, nil, nil, 254, nil, nil, nil, nil, - 254, 254, 254, 254, 254, 254, nil, nil, nil, 254, - 254, 255, 255, 255, nil, 255, nil, nil, nil, 255, - 255, nil, nil, nil, 255, nil, 255, 255, 255, 255, - 255, 255, 255, nil, nil, nil, nil, 255, 255, 255, - 255, 255, 255, 255, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 255, nil, nil, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, nil, 255, 255, nil, - 255, 255, 255, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 255, nil, nil, 255, nil, nil, 255, 255, - nil, nil, 255, nil, 255, nil, 255, nil, 255, nil, - nil, nil, nil, nil, nil, nil, 255, nil, nil, nil, - nil, 255, 255, 255, 255, 255, 255, nil, nil, nil, - 255, 255, 263, 263, 263, nil, 263, nil, nil, nil, - 263, 263, nil, nil, nil, 263, nil, 263, 263, 263, - 263, 263, 263, 263, nil, nil, nil, nil, 263, 263, - 263, 263, 263, 263, 263, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 263, nil, nil, 263, 263, 263, - 263, 263, 263, 263, 263, 263, 263, nil, 263, 263, - nil, 263, 263, 263, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 263, nil, nil, 263, nil, 263, 263, - 263, nil, nil, 263, nil, 263, nil, 263, nil, 263, - nil, nil, nil, nil, nil, nil, nil, 263, nil, nil, - nil, nil, 263, 263, 263, 263, 263, 263, nil, nil, - nil, 263, 263, 269, 269, 269, nil, 269, nil, nil, - nil, 269, 269, nil, nil, nil, 269, nil, 269, 269, - 269, 269, 269, 269, 269, nil, nil, nil, nil, 269, - 269, 269, 269, 269, 269, 269, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 269, nil, nil, 269, 269, - 269, 269, 269, 269, 269, 269, 269, 269, nil, 269, - 269, nil, nil, nil, 269, nil, 468, 468, 468, 468, - 468, 468, 468, 468, 468, 468, 468, nil, 468, 468, - nil, nil, 468, 468, 269, nil, nil, 269, nil, nil, - 269, 269, nil, nil, 269, nil, nil, nil, 468, nil, - 468, nil, 468, 468, 468, 468, 468, 468, 468, nil, - 468, nil, nil, 269, 269, 269, 269, 269, 269, nil, - nil, nil, 269, 269, 290, 290, 290, 468, 290, nil, - nil, nil, 290, 290, nil, nil, nil, 290, nil, 290, - 290, 290, 290, 290, 290, 290, nil, nil, nil, nil, - 290, 290, 290, 290, 290, 290, 290, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 290, nil, nil, 290, - 290, 290, 290, 290, 290, 290, 290, 290, 290, nil, - 290, 290, nil, 290, 290, 290, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 290, nil, nil, 290, 290, - nil, 290, 290, nil, nil, 290, nil, nil, nil, nil, - nil, 290, nil, nil, nil, nil, nil, nil, nil, 290, - nil, nil, nil, nil, 290, 290, 290, 290, 290, 290, - nil, nil, nil, 290, 290, 299, 299, 299, nil, 299, - nil, nil, nil, 299, 299, nil, nil, nil, 299, nil, - 299, 299, 299, 299, 299, 299, 299, nil, nil, nil, - nil, 299, 299, 299, 299, 299, 299, 299, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 299, nil, nil, - 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, - nil, 299, 299, nil, 299, 299, 299, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 299, nil, nil, 299, - nil, nil, 299, 299, nil, nil, 299, nil, nil, nil, - nil, nil, 299, nil, nil, nil, nil, nil, nil, nil, - 299, nil, nil, nil, nil, 299, 299, 299, 299, 299, - 299, nil, nil, nil, 299, 299, 308, 308, 308, nil, - 308, nil, nil, nil, 308, 308, nil, nil, nil, 308, - nil, 308, 308, 308, 308, 308, 308, 308, nil, nil, - nil, nil, 308, 308, 308, 308, 308, 308, 308, nil, - nil, 308, nil, nil, nil, nil, nil, nil, 308, nil, - nil, 308, 308, 308, 308, 308, 308, 308, 308, 308, - 308, nil, 308, 308, nil, 308, 308, 308, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 308, nil, nil, - 308, nil, nil, 308, 308, nil, nil, 308, nil, nil, - nil, nil, nil, 308, nil, nil, nil, nil, nil, nil, - nil, 308, nil, nil, nil, nil, 308, 308, 308, 308, - 308, 308, nil, nil, nil, 308, 308, 309, 309, 309, - nil, 309, nil, nil, nil, 309, 309, nil, nil, nil, - 309, nil, 309, 309, 309, 309, 309, 309, 309, nil, - nil, nil, nil, 309, 309, 309, 309, 309, 309, 309, - nil, nil, 309, nil, nil, nil, nil, nil, nil, 309, - nil, nil, 309, 309, 309, 309, 309, 309, 309, 309, - 309, 309, nil, 309, 309, nil, 309, 309, 309, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 309, nil, - nil, 309, nil, nil, 309, 309, nil, nil, 309, nil, - nil, nil, nil, nil, 309, nil, nil, nil, nil, nil, - nil, nil, 309, nil, nil, nil, nil, 309, 309, 309, - 309, 309, 309, nil, nil, nil, 309, 309, 327, 327, - 327, nil, 327, nil, nil, nil, 327, 327, nil, nil, - nil, 327, nil, 327, 327, 327, 327, 327, 327, 327, - nil, nil, nil, nil, 327, 327, 327, 327, 327, 327, - 327, nil, nil, 327, nil, nil, nil, nil, nil, nil, - 327, nil, nil, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, nil, 327, 327, nil, 327, 327, 327, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 327, - nil, nil, 327, nil, nil, 327, 327, nil, nil, 327, - nil, nil, nil, nil, nil, 327, nil, nil, nil, nil, - nil, nil, nil, 327, nil, nil, nil, nil, 327, 327, - 327, 327, 327, 327, nil, nil, nil, 327, 327, 341, - 341, 341, nil, 341, nil, nil, nil, 341, 341, nil, - nil, nil, 341, nil, 341, 341, 341, 341, 341, 341, - 341, nil, nil, nil, nil, 341, 341, 341, 341, 341, - 341, 341, nil, nil, 341, nil, nil, nil, nil, nil, - nil, 341, nil, nil, 341, 341, 341, 341, 341, 341, - 341, 341, 341, 341, nil, 341, 341, nil, 341, 341, - 341, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 341, nil, nil, 341, nil, nil, 341, 341, nil, nil, - 341, nil, nil, nil, nil, nil, 341, nil, nil, nil, - nil, nil, nil, nil, 341, nil, nil, nil, nil, 341, - 341, 341, 341, 341, 341, nil, nil, nil, 341, 341, - 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, - 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, - 357, 357, 357, 357, nil, nil, 357, 357, 357, 357, - 357, 357, 357, 357, 357, 357, nil, nil, nil, nil, - nil, 357, 357, 357, 357, 357, 357, 357, 357, nil, - nil, 357, nil, nil, nil, nil, nil, nil, nil, 357, - 357, nil, 357, 357, 357, 357, nil, 357, 357, nil, - nil, 357, nil, nil, nil, nil, 357, 357, 357, 357, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 357, 357, nil, 357, 357, 357, 357, - 357, 357, 357, 357, 357, nil, 357, nil, nil, 357, - 357, nil, nil, 369, 369, 369, nil, 369, nil, nil, - 357, 369, 369, nil, nil, nil, 369, nil, 369, 369, - 369, 369, 369, 369, 369, nil, nil, nil, nil, 369, - 369, 369, 369, 369, 369, 369, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 369, nil, nil, 369, 369, - 369, 369, 369, 369, 369, 369, 369, 369, nil, 369, - 369, nil, 369, 369, 369, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 369, nil, nil, 369, nil, nil, - 369, 369, nil, nil, 369, nil, nil, nil, nil, nil, - 369, nil, nil, nil, nil, nil, nil, nil, 369, nil, - nil, nil, nil, 369, 369, 369, 369, 369, 369, nil, - nil, nil, 369, 369, 378, 378, 378, nil, 378, nil, - nil, nil, 378, 378, nil, nil, nil, 378, nil, 378, - 378, 378, 378, 378, 378, 378, nil, nil, nil, nil, - 378, 378, 378, 378, 378, 378, 378, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 378, nil, nil, 378, - 378, 378, 378, 378, 378, 378, 378, 378, 378, nil, - 378, 378, nil, 378, 378, 378, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 378, nil, nil, 378, 378, - nil, 378, 378, nil, nil, 378, nil, 378, nil, 378, - nil, 378, nil, nil, nil, nil, nil, nil, nil, 378, - nil, nil, nil, nil, 378, 378, 378, 378, 378, 378, - nil, nil, nil, 378, 378, 385, 385, 385, nil, 385, - nil, nil, nil, 385, 385, nil, nil, nil, 385, nil, - 385, 385, 385, 385, 385, 385, 385, nil, nil, nil, - nil, 385, 385, 385, 385, 385, 385, 385, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 385, nil, nil, - 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, - nil, 385, 385, nil, 385, 385, 385, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 385, nil, nil, 385, - 385, nil, 385, 385, nil, nil, 385, nil, 385, nil, - 385, nil, 385, nil, nil, nil, nil, nil, nil, nil, - 385, nil, nil, nil, nil, 385, 385, 385, 385, 385, - 385, nil, nil, nil, 385, 385, 386, 386, 386, nil, - 386, nil, nil, nil, 386, 386, nil, nil, nil, 386, - nil, 386, 386, 386, 386, 386, 386, 386, nil, nil, - nil, nil, 386, 386, 386, 386, 386, 386, 386, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 386, nil, - nil, 386, 386, 386, 386, 386, 386, 386, 386, 386, - 386, nil, 386, 386, nil, 386, 386, 386, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 386, nil, nil, - 386, 386, nil, 386, 386, nil, nil, 386, nil, 386, - nil, 386, nil, 386, nil, nil, nil, nil, nil, nil, - nil, 386, nil, nil, nil, nil, 386, 386, 386, 386, - 386, 386, nil, nil, nil, 386, 386, 393, 393, 393, - nil, 393, nil, nil, nil, 393, 393, nil, nil, nil, - 393, nil, 393, 393, 393, 393, 393, 393, 393, nil, - nil, nil, nil, 393, 393, 393, 393, 393, 393, 393, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 393, - nil, nil, 393, 393, 393, 393, 393, 393, 393, 393, - 393, 393, nil, 393, 393, nil, 393, 393, 393, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 393, nil, - nil, 393, nil, nil, 393, 393, nil, nil, 393, nil, - 393, nil, nil, nil, 393, nil, nil, nil, nil, nil, - nil, nil, 393, nil, nil, nil, nil, 393, 393, 393, - 393, 393, 393, nil, nil, nil, 393, 393, 395, 395, - 395, nil, 395, nil, nil, nil, 395, 395, nil, nil, - nil, 395, nil, 395, 395, 395, 395, 395, 395, 395, - nil, nil, nil, nil, 395, 395, 395, 395, 395, 395, - 395, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 395, nil, nil, 395, 395, 395, 395, 395, 395, 395, - 395, 395, 395, nil, 395, 395, nil, 395, 395, 395, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 395, - nil, nil, 395, nil, nil, 395, 395, nil, nil, 395, - nil, nil, nil, nil, nil, 395, nil, nil, nil, nil, - nil, nil, nil, 395, nil, nil, nil, nil, 395, 395, - 395, 395, 395, 395, nil, nil, nil, 395, 395, 396, - 396, 396, nil, 396, nil, nil, nil, 396, 396, nil, - nil, nil, 396, nil, 396, 396, 396, 396, 396, 396, - 396, nil, nil, nil, nil, 396, 396, 396, 396, 396, - 396, 396, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 396, nil, nil, 396, 396, 396, 396, 396, 396, - 396, 396, 396, 396, nil, 396, 396, nil, 396, 396, - 396, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 396, nil, nil, 396, nil, nil, 396, 396, nil, nil, - 396, nil, nil, nil, nil, nil, 396, nil, nil, nil, - nil, nil, nil, nil, 396, nil, nil, nil, nil, 396, - 396, 396, 396, 396, 396, nil, nil, nil, 396, 396, - 397, 397, 397, nil, 397, nil, nil, nil, 397, 397, - nil, nil, nil, 397, nil, 397, 397, 397, 397, 397, - 397, 397, nil, nil, nil, nil, 397, 397, 397, 397, - 397, 397, 397, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 397, nil, nil, 397, 397, 397, 397, 397, - 397, 397, 397, 397, 397, nil, 397, 397, nil, 397, - 397, 397, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 397, nil, nil, 397, nil, nil, 397, 397, nil, - nil, 397, nil, nil, nil, nil, nil, 397, nil, nil, - nil, nil, nil, nil, nil, 397, nil, nil, nil, nil, - 397, 397, 397, 397, 397, 397, nil, nil, nil, 397, - 397, 426, 426, 426, nil, 426, nil, nil, nil, 426, - 426, nil, nil, nil, 426, nil, 426, 426, 426, 426, - 426, 426, 426, nil, nil, nil, nil, 426, 426, 426, - 426, 426, 426, 426, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 426, nil, nil, 426, 426, 426, 426, - 426, 426, 426, 426, 426, 426, nil, 426, 426, nil, - 426, 426, 426, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 426, nil, nil, 426, nil, nil, 426, 426, - nil, nil, 426, nil, 426, nil, 426, nil, 426, nil, - nil, nil, nil, nil, nil, nil, 426, nil, nil, nil, - nil, 426, 426, 426, 426, 426, 426, nil, nil, nil, - 426, 426, 428, 428, 428, nil, 428, nil, nil, nil, - 428, 428, nil, nil, nil, 428, nil, 428, 428, 428, - 428, 428, 428, 428, nil, nil, nil, nil, 428, 428, - 428, 428, 428, 428, 428, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 428, nil, nil, 428, 428, 428, - 428, 428, 428, 428, 428, 428, 428, nil, 428, 428, - nil, 428, 428, 428, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 428, nil, nil, 428, nil, nil, 428, - 428, nil, nil, 428, nil, 428, nil, 428, nil, 428, - nil, nil, nil, nil, nil, nil, nil, 428, nil, nil, - nil, nil, 428, 428, 428, 428, 428, 428, nil, nil, - nil, 428, 428, 431, 431, 431, nil, 431, nil, nil, - nil, 431, 431, nil, nil, nil, 431, nil, 431, 431, - 431, 431, 431, 431, 431, nil, nil, nil, nil, 431, - 431, 431, 431, 431, 431, 431, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 431, nil, nil, 431, 431, - 431, 431, 431, 431, 431, 431, 431, 431, nil, 431, - 431, nil, 431, 431, 431, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 431, nil, nil, 431, nil, nil, - 431, 431, nil, nil, 431, nil, nil, nil, nil, nil, - 431, nil, nil, nil, nil, nil, nil, nil, 431, nil, - nil, nil, nil, 431, 431, 431, 431, 431, 431, nil, - nil, nil, 431, 431, 445, 445, 445, nil, 445, nil, - nil, nil, 445, 445, nil, nil, nil, 445, nil, 445, - 445, 445, 445, 445, 445, 445, nil, nil, nil, nil, - 445, 445, 445, 445, 445, 445, 445, nil, nil, 445, - nil, nil, nil, nil, nil, nil, 445, nil, nil, 445, - 445, 445, 445, 445, 445, 445, 445, 445, 445, nil, - 445, 445, nil, 445, 445, 445, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 445, nil, nil, 445, nil, - nil, 445, 445, nil, nil, 445, nil, 445, nil, 445, - nil, 445, nil, nil, nil, nil, nil, nil, nil, 445, - nil, nil, nil, nil, 445, 445, 445, 445, 445, 445, - nil, nil, nil, 445, 445, 456, 456, 456, nil, 456, - nil, nil, nil, 456, 456, nil, nil, nil, 456, nil, - 456, 456, 456, 456, 456, 456, 456, nil, nil, nil, - nil, 456, 456, 456, 456, 456, 456, 456, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 456, nil, nil, - 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, - nil, 456, 456, nil, 456, 456, 456, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 456, nil, nil, 456, - nil, nil, 456, 456, nil, nil, 456, nil, 456, nil, - nil, nil, 456, nil, nil, nil, nil, nil, nil, nil, - 456, nil, nil, nil, nil, 456, 456, 456, 456, 456, - 456, nil, nil, nil, 456, 456, 463, 463, 463, nil, - 463, nil, nil, nil, 463, 463, nil, nil, nil, 463, - nil, 463, 463, 463, 463, 463, 463, 463, nil, nil, - nil, nil, 463, 463, 463, 463, 463, 463, 463, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 463, nil, - nil, 463, 463, 463, 463, 463, 463, 463, 463, 463, - 463, nil, 463, 463, nil, 463, 463, 463, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 463, nil, nil, - 463, nil, nil, 463, 463, nil, nil, 463, nil, nil, - nil, nil, nil, 463, nil, nil, nil, nil, nil, nil, - nil, 463, nil, nil, nil, nil, 463, 463, 463, 463, - 463, 463, nil, nil, nil, 463, 463, 464, 464, 464, - nil, 464, nil, nil, nil, 464, 464, nil, nil, nil, - 464, nil, 464, 464, 464, 464, 464, 464, 464, nil, - nil, nil, nil, 464, 464, 464, 464, 464, 464, 464, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 464, - nil, nil, 464, 464, 464, 464, 464, 464, 464, 464, - 464, 464, nil, 464, 464, nil, 464, 464, 464, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 464, nil, - nil, 464, nil, nil, 464, 464, nil, nil, 464, nil, - nil, nil, nil, nil, 464, nil, nil, nil, nil, nil, - nil, nil, 464, nil, nil, nil, nil, 464, 464, 464, - 464, 464, 464, nil, nil, nil, 464, 464, 465, 465, - 465, nil, 465, nil, nil, nil, 465, 465, nil, nil, - nil, 465, nil, 465, 465, 465, 465, 465, 465, 465, - nil, nil, nil, nil, 465, 465, 465, 465, 465, 465, - 465, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 465, nil, nil, 465, 465, 465, 465, 465, 465, 465, - 465, 465, 465, nil, 465, 465, nil, 465, 465, 465, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 465, - nil, nil, 465, nil, nil, 465, 465, nil, nil, 465, - nil, nil, nil, nil, nil, 465, nil, nil, nil, nil, - nil, nil, nil, 465, nil, nil, nil, nil, 465, 465, - 465, 465, 465, 465, nil, nil, nil, 465, 465, 469, - 469, 469, nil, 469, nil, nil, nil, 469, 469, nil, - nil, nil, 469, nil, 469, 469, 469, 469, 469, 469, - 469, nil, nil, nil, nil, 469, 469, 469, 469, 469, - 469, 469, nil, nil, 469, nil, nil, nil, nil, nil, - nil, 469, nil, nil, 469, 469, 469, 469, 469, 469, - 469, 469, 469, 469, nil, 469, 469, nil, 469, 469, - 469, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 469, nil, nil, 469, nil, nil, 469, 469, nil, nil, - 469, nil, nil, nil, nil, nil, 469, nil, nil, nil, - nil, nil, nil, nil, 469, nil, nil, nil, nil, 469, - 469, 469, 469, 469, 469, nil, nil, nil, 469, 469, - 471, 471, 471, nil, 471, nil, nil, nil, 471, 471, - nil, nil, nil, 471, nil, 471, 471, 471, 471, 471, - 471, 471, nil, nil, nil, nil, 471, 471, 471, 471, - 471, 471, 471, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 471, nil, nil, 471, 471, 471, 471, 471, - 471, 471, 471, 471, 471, nil, 471, 471, nil, 471, - 471, 471, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 471, nil, nil, 471, nil, nil, 471, 471, nil, - nil, 471, nil, 471, nil, nil, nil, 471, nil, nil, - nil, nil, nil, nil, nil, 471, nil, nil, nil, nil, - 471, 471, 471, 471, 471, 471, nil, nil, nil, 471, - 471, 476, 476, 476, nil, 476, nil, nil, nil, 476, - 476, nil, nil, nil, 476, nil, 476, 476, 476, 476, - 476, 476, 476, nil, nil, nil, nil, 476, 476, 476, - 476, 476, 476, 476, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 476, nil, nil, 476, 476, 476, 476, - 476, 476, 476, 476, 476, 476, nil, 476, 476, nil, - 476, 476, 476, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 476, nil, nil, 476, nil, nil, 476, 476, - nil, nil, 476, nil, 476, nil, nil, nil, 476, nil, - nil, nil, nil, nil, nil, nil, 476, nil, nil, nil, - nil, 476, 476, 476, 476, 476, 476, nil, nil, nil, - 476, 476, 479, 479, 479, nil, 479, nil, nil, nil, - 479, 479, nil, nil, nil, 479, nil, 479, 479, 479, - 479, 479, 479, 479, nil, nil, nil, nil, 479, 479, - 479, 479, 479, 479, 479, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 479, nil, nil, 479, 479, 479, - 479, 479, 479, 479, 479, 479, 479, nil, 479, 479, - nil, 479, 479, 479, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 479, nil, nil, 479, nil, nil, 479, - 479, nil, nil, 479, nil, nil, nil, nil, nil, 479, - nil, nil, nil, nil, nil, nil, nil, 479, nil, nil, - nil, nil, 479, 479, 479, 479, 479, 479, nil, nil, - nil, 479, 479, 482, 482, 482, nil, 482, nil, nil, - nil, 482, 482, nil, nil, nil, 482, nil, 482, 482, - 482, 482, 482, 482, 482, nil, nil, nil, nil, 482, - 482, 482, 482, 482, 482, 482, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 482, nil, nil, 482, 482, - 482, 482, 482, 482, 482, 482, 482, 482, nil, 482, - 482, nil, 482, 482, 482, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 482, nil, nil, 482, nil, nil, - 482, 482, nil, nil, 482, nil, nil, nil, nil, nil, - 482, nil, nil, nil, nil, nil, nil, nil, 482, nil, - nil, nil, nil, 482, 482, 482, 482, 482, 482, nil, - nil, nil, 482, 482, 496, 496, 496, nil, 496, nil, - nil, nil, 496, 496, nil, nil, nil, 496, nil, 496, - 496, 496, 496, 496, 496, 496, nil, nil, nil, nil, - 496, 496, 496, 496, 496, 496, 496, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 496, nil, nil, 496, - 496, 496, 496, 496, 496, 496, 496, 496, 496, nil, - 496, 496, nil, 496, 496, 496, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 496, nil, nil, 496, nil, - nil, 496, 496, nil, nil, 496, nil, 496, nil, nil, - nil, 496, nil, nil, nil, nil, nil, nil, nil, 496, - nil, nil, nil, nil, 496, 496, 496, 496, 496, 496, - nil, nil, nil, 496, 496, 497, 497, 497, nil, 497, - nil, nil, nil, 497, 497, nil, nil, nil, 497, nil, - 497, 497, 497, 497, 497, 497, 497, nil, nil, nil, - nil, 497, 497, 497, 497, 497, 497, 497, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 497, nil, nil, - 497, 497, 497, 497, 497, 497, 497, 497, 497, 497, - nil, 497, 497, nil, 497, 497, 497, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 497, nil, nil, 497, - nil, nil, 497, 497, nil, nil, 497, nil, 497, nil, - nil, nil, 497, nil, nil, nil, nil, nil, nil, nil, - 497, nil, nil, nil, nil, 497, 497, 497, 497, 497, - 497, nil, nil, nil, 497, 497, 506, 506, 506, nil, - 506, nil, nil, nil, 506, 506, nil, nil, nil, 506, - nil, 506, 506, 506, 506, 506, 506, 506, nil, nil, - nil, nil, 506, 506, 506, 506, 506, 506, 506, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 506, nil, - nil, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, nil, 506, 506, nil, 506, 506, 506, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 506, nil, nil, - 506, nil, nil, 506, 506, nil, nil, 506, nil, 506, - nil, nil, nil, 506, nil, nil, nil, nil, nil, nil, - nil, 506, nil, nil, nil, nil, 506, 506, 506, 506, - 506, 506, nil, nil, nil, 506, 506, 510, 510, 510, - nil, 510, nil, nil, nil, 510, 510, nil, nil, nil, - 510, nil, 510, 510, 510, 510, 510, 510, 510, nil, - nil, nil, nil, 510, 510, 510, 510, 510, 510, 510, - nil, nil, 510, nil, nil, nil, nil, nil, nil, 510, - nil, nil, 510, 510, 510, 510, 510, 510, 510, 510, - 510, 510, nil, 510, 510, nil, 510, 510, 510, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 510, nil, - nil, 510, nil, nil, 510, 510, nil, nil, 510, nil, - nil, nil, nil, nil, 510, nil, nil, nil, nil, nil, - nil, nil, 510, nil, nil, nil, nil, 510, 510, 510, - 510, 510, 510, nil, nil, nil, 510, 510, 534, 534, - 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, - 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, - 534, 534, nil, nil, 534, 534, 534, 534, 534, 534, - 534, 534, 534, 534, nil, nil, nil, nil, nil, 534, - 534, 534, 534, 534, 534, 534, 534, nil, nil, 534, - nil, nil, nil, nil, nil, nil, nil, 534, 534, nil, - 534, 534, 534, 534, nil, 534, 534, nil, nil, 534, - nil, nil, nil, nil, 534, 534, 534, 534, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 534, 534, nil, 534, 534, 534, 534, 534, 534, - 534, 534, 534, nil, 534, nil, nil, 534, 534, nil, - nil, 537, 537, 537, nil, 537, nil, nil, 534, 537, - 537, nil, nil, nil, 537, nil, 537, 537, 537, 537, - 537, 537, 537, nil, nil, nil, nil, 537, 537, 537, - 537, 537, 537, 537, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 537, nil, nil, 537, 537, 537, 537, - 537, 537, 537, 537, 537, 537, nil, 537, 537, nil, - 537, 537, 537, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 537, nil, nil, 537, nil, nil, 537, 537, - nil, nil, 537, nil, nil, nil, nil, nil, 537, nil, - nil, nil, nil, nil, nil, nil, 537, nil, nil, nil, - nil, 537, 537, 537, 537, 537, 537, nil, nil, nil, - 537, 537, 538, 538, 538, nil, 538, nil, nil, nil, - 538, 538, nil, nil, nil, 538, nil, 538, 538, 538, - 538, 538, 538, 538, nil, nil, nil, nil, 538, 538, - 538, 538, 538, 538, 538, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 538, nil, nil, 538, 538, 538, - 538, 538, 538, 538, 538, 538, 538, nil, 538, 538, - nil, 538, 538, 538, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 538, nil, nil, 538, nil, nil, 538, - 538, nil, nil, 538, nil, 538, nil, nil, nil, 538, - nil, nil, nil, nil, nil, nil, nil, 538, nil, nil, - nil, nil, 538, 538, 538, 538, 538, 538, nil, nil, - nil, 538, 538, 541, 541, 541, nil, 541, nil, nil, - nil, 541, 541, nil, nil, nil, 541, nil, 541, 541, - 541, 541, 541, 541, 541, nil, nil, nil, nil, 541, - 541, 541, 541, 541, 541, 541, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 541, nil, nil, 541, 541, - 541, 541, 541, 541, 541, 541, 541, 541, nil, 541, - 541, nil, 541, 541, 541, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 541, nil, nil, 541, nil, nil, - 541, 541, nil, nil, 541, nil, nil, nil, nil, nil, - 541, nil, nil, nil, nil, nil, nil, nil, 541, nil, - nil, nil, nil, 541, 541, 541, 541, 541, 541, nil, - nil, nil, 541, 541, 542, 542, 542, nil, 542, nil, - nil, nil, 542, 542, nil, nil, nil, 542, nil, 542, - 542, 542, 542, 542, 542, 542, nil, nil, nil, nil, - 542, 542, 542, 542, 542, 542, 542, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 542, nil, nil, 542, - 542, 542, 542, 542, 542, 542, 542, 542, 542, nil, - 542, 542, nil, 542, 542, 542, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 542, nil, nil, 542, nil, - nil, 542, 542, nil, nil, 542, nil, nil, nil, nil, - nil, 542, nil, nil, nil, nil, nil, nil, nil, 542, - nil, nil, nil, nil, 542, 542, 542, 542, 542, 542, - nil, nil, nil, 542, 542, 546, 546, 546, nil, 546, - nil, nil, nil, 546, 546, nil, nil, nil, 546, nil, - 546, 546, 546, 546, 546, 546, 546, nil, nil, nil, - nil, 546, 546, 546, 546, 546, 546, 546, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 546, nil, nil, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - nil, 546, 546, nil, 546, 546, 546, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 546, nil, nil, 546, - nil, nil, 546, 546, nil, nil, 546, nil, nil, nil, - nil, nil, 546, nil, nil, nil, nil, nil, nil, nil, - 546, nil, nil, nil, nil, 546, 546, 546, 546, 546, - 546, nil, nil, nil, 546, 546, 549, 549, 549, nil, - 549, nil, nil, nil, 549, 549, nil, nil, nil, 549, - nil, 549, 549, 549, 549, 549, 549, 549, nil, nil, - nil, nil, 549, 549, 549, 549, 549, 549, 549, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 549, nil, - nil, 549, 549, 549, 549, 549, 549, 549, 549, 549, - 549, nil, 549, 549, nil, 549, 549, 549, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 549, nil, nil, - 549, nil, nil, 549, 549, nil, nil, 549, nil, nil, - nil, nil, nil, 549, nil, nil, nil, nil, nil, nil, - nil, 549, nil, nil, nil, nil, 549, 549, 549, 549, - 549, 549, nil, nil, nil, 549, 549, 556, 556, 556, - nil, 556, nil, nil, nil, 556, 556, nil, nil, nil, - 556, nil, 556, 556, 556, 556, 556, 556, 556, nil, - nil, nil, nil, 556, 556, 556, 556, 556, 556, 556, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 556, - nil, nil, 556, 556, 556, 556, 556, 556, 556, 556, - 556, 556, nil, 556, 556, nil, 556, 556, 556, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 556, nil, - nil, 556, nil, nil, 556, 556, nil, nil, 556, nil, - nil, nil, nil, nil, 556, nil, nil, nil, nil, nil, - nil, nil, 556, nil, nil, nil, nil, 556, 556, 556, - 556, 556, 556, nil, nil, nil, 556, 556, 557, 557, - 557, nil, 557, nil, nil, nil, 557, 557, nil, nil, - nil, 557, nil, 557, 557, 557, 557, 557, 557, 557, - nil, nil, nil, nil, 557, 557, 557, 557, 557, 557, - 557, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 557, nil, nil, 557, 557, 557, 557, 557, 557, 557, - 557, 557, 557, nil, 557, 557, nil, nil, nil, 557, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 557, - nil, nil, 557, nil, nil, 557, 557, nil, nil, 557, - nil, 557, nil, 557, nil, nil, nil, nil, nil, nil, - nil, nil, 557, nil, nil, nil, nil, nil, 557, 557, - 557, 557, 557, 557, nil, nil, nil, 557, 557, 560, - 560, 560, nil, 560, nil, nil, nil, 560, 560, nil, - nil, nil, 560, nil, 560, 560, 560, 560, 560, 560, - 560, nil, nil, nil, nil, 560, 560, 560, 560, 560, - 560, 560, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 560, nil, nil, 560, 560, 560, 560, 560, 560, - 560, 560, 560, 560, nil, 560, 560, nil, 560, 560, - 560, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 560, nil, nil, 560, nil, nil, 560, 560, nil, nil, - 560, nil, nil, nil, nil, nil, 560, nil, nil, nil, - nil, nil, nil, nil, 560, nil, nil, nil, nil, 560, - 560, 560, 560, 560, 560, nil, nil, nil, 560, 560, - 564, 564, 564, nil, 564, nil, nil, nil, 564, 564, - nil, nil, nil, 564, nil, 564, 564, 564, 564, 564, - 564, 564, nil, nil, nil, nil, 564, 564, 564, 564, - 564, 564, 564, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 564, nil, nil, 564, 564, 564, 564, 564, - 564, 564, 564, 564, 564, nil, 564, 564, nil, 564, - 564, 564, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 564, nil, nil, 564, nil, nil, 564, 564, nil, - nil, 564, nil, nil, nil, nil, nil, 564, nil, nil, - nil, nil, nil, nil, nil, 564, nil, nil, nil, nil, - 564, 564, 564, 564, 564, 564, nil, nil, nil, 564, - 564, 580, 580, 580, nil, 580, nil, nil, nil, 580, - 580, nil, nil, nil, 580, nil, 580, 580, 580, 580, - 580, 580, 580, nil, nil, nil, nil, 580, 580, 580, - 580, 580, 580, 580, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 580, nil, nil, 580, 580, 580, 580, - 580, 580, 580, 580, 580, 580, nil, 580, 580, nil, - 580, 580, 580, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 580, nil, nil, 580, nil, nil, 580, 580, - nil, nil, 580, nil, 580, nil, 580, nil, 580, nil, - nil, nil, nil, nil, nil, nil, 580, nil, nil, nil, - nil, 580, 580, 580, 580, 580, 580, nil, nil, nil, - 580, 580, 584, 584, 584, nil, 584, nil, nil, nil, - 584, 584, nil, nil, nil, 584, nil, 584, 584, 584, - 584, 584, 584, 584, nil, nil, nil, nil, 584, 584, - 584, 584, 584, 584, 584, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 584, nil, nil, 584, 584, 584, - 584, 584, 584, 584, 584, 584, 584, nil, 584, 584, - nil, 584, 584, 584, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 584, nil, nil, 584, nil, nil, 584, - 584, nil, nil, 584, nil, nil, nil, nil, nil, 584, - nil, nil, nil, nil, nil, nil, nil, 584, nil, nil, - nil, nil, 584, 584, 584, 584, 584, 584, nil, nil, - nil, 584, 584, 612, 612, 612, nil, 612, nil, nil, - nil, 612, 612, nil, nil, nil, 612, nil, 612, 612, - 612, 612, 612, 612, 612, nil, nil, nil, nil, 612, - 612, 612, 612, 612, 612, 612, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 612, nil, nil, 612, 612, - 612, 612, 612, 612, 612, 612, 612, 612, nil, 612, - 612, nil, 612, 612, 612, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 612, nil, nil, 612, nil, nil, - 612, 612, nil, nil, 612, nil, nil, nil, nil, nil, - 612, nil, nil, nil, nil, nil, nil, nil, 612, nil, - nil, nil, nil, 612, 612, 612, 612, 612, 612, nil, - nil, nil, 612, 612, 628, 628, 628, nil, 628, nil, - nil, nil, 628, 628, nil, nil, nil, 628, nil, 628, - 628, 628, 628, 628, 628, 628, nil, nil, nil, nil, - 628, 628, 628, 628, 628, 628, 628, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 628, nil, nil, 628, - 628, 628, 628, 628, 628, 628, 628, 628, 628, nil, - 628, 628, nil, 628, 628, 628, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 628, nil, nil, 628, nil, - nil, 628, 628, nil, nil, 628, nil, nil, nil, nil, - nil, 628, nil, nil, nil, nil, nil, nil, nil, 628, - nil, nil, nil, nil, 628, 628, 628, 628, 628, 628, - nil, nil, nil, 628, 628, 634, 634, 634, nil, 634, - nil, nil, nil, 634, 634, nil, nil, nil, 634, nil, - 634, 634, 634, 634, 634, 634, 634, nil, nil, nil, - nil, 634, 634, 634, 634, 634, 634, 634, nil, nil, - 634, nil, nil, nil, nil, nil, nil, 634, nil, nil, - 634, 634, 634, 634, 634, 634, 634, 634, 634, 634, - nil, 634, 634, nil, 634, 634, 634, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 634, nil, nil, 634, - nil, nil, 634, 634, nil, nil, 634, nil, nil, nil, - nil, nil, 634, nil, nil, nil, nil, nil, nil, nil, - 634, nil, nil, nil, nil, 634, 634, 634, 634, 634, - 634, nil, nil, nil, 634, 634, 679, 679, 679, nil, - 679, nil, nil, nil, 679, 679, nil, nil, nil, 679, - nil, 679, 679, 679, 679, 679, 679, 679, nil, nil, - nil, nil, 679, 679, 679, 679, 679, 679, 679, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 679, nil, - nil, 679, 679, 679, 679, 679, 679, 679, 679, 679, - 679, nil, 679, 679, nil, 679, 679, 679, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 679, nil, nil, - 679, nil, nil, 679, 679, nil, nil, 679, nil, nil, - nil, nil, nil, 679, nil, nil, nil, nil, nil, nil, - nil, 679, nil, nil, nil, nil, 679, 679, 679, 679, - 679, 679, nil, nil, nil, 679, 679, 680, 680, 680, - nil, 680, nil, nil, nil, 680, 680, nil, nil, nil, - 680, nil, 680, 680, 680, 680, 680, 680, 680, nil, - nil, nil, nil, 680, 680, 680, 680, 680, 680, 680, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 680, - nil, nil, 680, 680, 680, 680, 680, 680, 680, 680, - 680, 680, nil, 680, 680, nil, 680, 680, 680, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 680, nil, - nil, 680, nil, nil, 680, 680, nil, nil, 680, nil, - nil, nil, nil, nil, 680, nil, nil, nil, nil, nil, - nil, nil, 680, nil, nil, nil, nil, 680, 680, 680, - 680, 680, 680, nil, nil, nil, 680, 680, 690, 690, - 690, nil, 690, nil, nil, nil, 690, 690, nil, nil, - nil, 690, nil, 690, 690, 690, 690, 690, 690, 690, - nil, nil, nil, nil, 690, 690, 690, 690, 690, 690, - 690, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 690, nil, nil, 690, 690, 690, 690, 690, 690, 690, - 690, 690, 690, nil, 690, 690, nil, 690, 690, 690, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 690, - nil, nil, 690, nil, nil, 690, 690, nil, nil, 690, - nil, nil, nil, nil, nil, 690, nil, nil, nil, nil, - nil, nil, nil, 690, nil, nil, nil, nil, 690, 690, - 690, 690, 690, 690, nil, nil, nil, 690, 690, 691, - 691, 691, nil, 691, nil, nil, nil, 691, 691, nil, - nil, nil, 691, nil, 691, 691, 691, 691, 691, 691, - 691, nil, nil, nil, nil, 691, 691, 691, 691, 691, - 691, 691, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 691, nil, nil, 691, 691, 691, 691, 691, 691, - 691, 691, 691, 691, nil, 691, 691, nil, 691, 691, - 691, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 691, nil, nil, 691, nil, nil, 691, 691, nil, nil, - 691, nil, nil, nil, nil, nil, 691, nil, nil, nil, - nil, nil, nil, nil, 691, nil, nil, nil, nil, 691, - 691, 691, 691, 691, 691, nil, nil, nil, 691, 691, - 692, 692, 692, nil, 692, nil, nil, nil, 692, 692, - nil, nil, nil, 692, nil, 692, 692, 692, 692, 692, - 692, 692, nil, nil, nil, nil, 692, 692, 692, 692, - 692, 692, 692, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 692, nil, nil, 692, 692, 692, 692, 692, - 692, 692, 692, 692, 692, nil, 692, 692, nil, 692, - 692, 692, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 692, nil, nil, 692, nil, nil, 692, 692, nil, - nil, 692, nil, nil, nil, nil, nil, 692, nil, nil, - nil, nil, nil, nil, nil, 692, nil, nil, nil, nil, - 692, 692, 692, 692, 692, 692, nil, nil, nil, 692, - 692, 698, 698, 698, nil, 698, nil, nil, nil, 698, - 698, nil, nil, nil, 698, nil, 698, 698, 698, 698, - 698, 698, 698, nil, nil, nil, nil, 698, 698, 698, - 698, 698, 698, 698, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 698, nil, nil, 698, 698, 698, 698, - 698, 698, 698, 698, 698, 698, nil, 698, 698, nil, - nil, nil, 698, nil, 600, 600, 600, 600, 600, 600, - 600, 600, 600, 600, 600, nil, 600, 600, nil, nil, - 600, 600, 698, nil, nil, 698, nil, nil, 698, 698, - nil, nil, 698, nil, nil, nil, 600, nil, 600, nil, - 600, 600, 600, 600, 600, 600, 600, nil, 600, nil, - nil, 698, 698, 698, 698, 698, 698, nil, nil, nil, - 698, 698, 704, 704, 704, 600, 704, nil, nil, nil, - 704, 704, nil, nil, nil, 704, nil, 704, 704, 704, - 704, 704, 704, 704, nil, nil, nil, nil, 704, 704, - 704, 704, 704, 704, 704, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 704, nil, nil, 704, 704, 704, - 704, 704, 704, 704, 704, 704, 704, nil, 704, 704, - nil, 704, 704, 704, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 704, nil, nil, 704, nil, nil, 704, - 704, nil, nil, 704, nil, 704, nil, 704, nil, 704, - nil, nil, nil, nil, nil, nil, nil, 704, nil, nil, - nil, nil, 704, 704, 704, 704, 704, 704, nil, nil, - nil, 704, 704, 713, 713, 713, nil, 713, nil, nil, - nil, 713, 713, nil, nil, nil, 713, nil, 713, 713, - 713, 713, 713, 713, 713, nil, nil, nil, nil, 713, - 713, 713, 713, 713, 713, 713, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 713, nil, nil, 713, 713, - 713, 713, 713, 713, 713, 713, 713, 713, nil, 713, - 713, nil, 713, 713, 713, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 713, nil, nil, 713, nil, nil, - 713, 713, nil, nil, 713, nil, 713, nil, 713, nil, - 713, nil, nil, nil, nil, nil, nil, nil, 713, nil, - nil, nil, nil, 713, 713, 713, 713, 713, 713, nil, - nil, nil, 713, 713, 715, 715, 715, nil, 715, nil, - nil, nil, 715, 715, nil, nil, nil, 715, nil, 715, - 715, 715, 715, 715, 715, 715, nil, nil, nil, nil, - 715, 715, 715, 715, 715, 715, 715, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 715, nil, nil, 715, - 715, 715, 715, 715, 715, 715, 715, 715, 715, nil, - 715, 715, nil, 715, 715, 715, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 715, nil, nil, 715, nil, - nil, 715, 715, nil, nil, 715, nil, 715, nil, 715, - nil, 715, nil, nil, nil, nil, nil, nil, nil, 715, - nil, nil, nil, nil, 715, 715, 715, 715, 715, 715, - nil, nil, nil, 715, 715, 728, 728, 728, nil, 728, - nil, nil, nil, 728, 728, nil, nil, nil, 728, nil, - 728, 728, 728, 728, 728, 728, 728, nil, nil, nil, - nil, 728, 728, 728, 728, 728, 728, 728, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 728, nil, nil, - 728, 728, 728, 728, 728, 728, 728, 728, 728, 728, - nil, 728, 728, nil, nil, nil, 728, nil, 677, 677, - 677, 677, 677, 677, 677, 677, 677, 677, 677, nil, - 677, 677, nil, nil, 677, 677, 728, nil, nil, 728, - nil, nil, 728, 728, nil, nil, 728, nil, nil, nil, - 677, nil, 677, nil, 677, 677, 677, 677, 677, 677, - 677, nil, 677, nil, nil, 728, 728, 728, 728, 728, - 728, nil, nil, nil, 728, 728, 734, 734, 734, 677, - 734, nil, nil, nil, 734, 734, nil, nil, nil, 734, - nil, 734, 734, 734, 734, 734, 734, 734, nil, nil, - nil, nil, 734, 734, 734, 734, 734, 734, 734, nil, - nil, 734, nil, nil, nil, nil, nil, nil, 734, nil, - nil, 734, 734, 734, 734, 734, 734, 734, 734, 734, - 734, nil, 734, 734, nil, 734, 734, 734, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 734, nil, nil, - 734, nil, nil, 734, 734, nil, nil, 734, nil, nil, - nil, nil, nil, 734, nil, nil, nil, nil, nil, nil, - nil, 734, nil, nil, nil, nil, 734, 734, 734, 734, - 734, 734, nil, nil, nil, 734, 734, 740, 740, 740, - nil, 740, nil, nil, nil, 740, 740, nil, nil, nil, - 740, nil, 740, 740, 740, 740, 740, 740, 740, nil, - nil, nil, nil, 740, 740, 740, 740, 740, 740, 740, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 740, - nil, nil, 740, 740, 740, 740, 740, 740, 740, 740, - 740, 740, nil, 740, 740, nil, 740, 740, 740, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 740, nil, - nil, 740, nil, nil, 740, 740, nil, nil, 740, nil, - 740, nil, nil, nil, 740, nil, nil, nil, nil, nil, - nil, nil, 740, nil, nil, nil, nil, 740, 740, 740, - 740, 740, 740, nil, nil, nil, 740, 740, 759, 759, - 759, nil, 759, nil, nil, nil, 759, 759, nil, nil, - nil, 759, nil, 759, 759, 759, 759, 759, 759, 759, - nil, nil, nil, nil, 759, 759, 759, 759, 759, 759, - 759, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 759, nil, nil, 759, 759, 759, 759, 759, 759, 759, - 759, 759, 759, nil, 759, 759, nil, 759, 759, 759, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 759, - nil, nil, 759, nil, nil, 759, 759, nil, nil, 759, - nil, nil, nil, nil, nil, 759, nil, nil, nil, nil, - nil, nil, nil, 759, nil, nil, nil, nil, 759, 759, - 759, 759, 759, 759, nil, nil, nil, 759, 759, 768, - 768, 768, nil, 768, nil, nil, nil, 768, 768, nil, - nil, nil, 768, nil, 768, 768, 768, 768, 768, 768, - 768, nil, nil, nil, nil, 768, 768, 768, 768, 768, - 768, 768, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 768, nil, nil, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, nil, 768, 768, nil, 768, 768, - 768, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 768, nil, nil, 768, nil, nil, 768, 768, nil, nil, - 768, nil, nil, nil, nil, nil, 768, nil, nil, nil, - nil, nil, nil, nil, 768, nil, nil, nil, nil, 768, - 768, 768, 768, 768, 768, nil, nil, nil, 768, 768, - 769, 769, 769, nil, 769, nil, nil, nil, 769, 769, - nil, nil, nil, 769, nil, 769, 769, 769, 769, 769, - 769, 769, nil, nil, nil, nil, 769, 769, 769, 769, - 769, 769, 769, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 769, nil, nil, 769, 769, 769, 769, 769, - 769, 769, 769, 769, 769, nil, 769, 769, nil, nil, - nil, 769, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 769, nil, nil, 769, nil, nil, 769, 769, nil, - nil, 769, nil, 769, nil, 769, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 769, 769, 769, 769, 769, 769, nil, nil, nil, 769, - 769, 780, 780, 780, nil, 780, nil, nil, nil, 780, - 780, nil, nil, nil, 780, nil, 780, 780, 780, 780, - 780, 780, 780, nil, nil, nil, nil, 780, 780, 780, - 780, 780, 780, 780, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 780, nil, nil, 780, 780, 780, 780, - 780, 780, 780, 780, 780, 780, nil, 780, 780, nil, - 780, 780, 780, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 780, nil, nil, 780, nil, nil, 780, 780, - nil, nil, 780, nil, nil, nil, nil, nil, 780, nil, - nil, nil, nil, nil, nil, nil, 780, nil, nil, nil, - nil, 780, 780, 780, 780, 780, 780, nil, nil, nil, - 780, 780, 786, 786, 786, nil, 786, nil, nil, nil, - 786, 786, nil, nil, nil, 786, nil, 786, 786, 786, - 786, 786, 786, 786, nil, nil, nil, nil, 786, 786, - 786, 786, 786, 786, 786, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 786, nil, nil, 786, 786, 786, - 786, 786, 786, 786, 786, 786, 786, nil, 786, 786, - nil, 786, 786, 786, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 786, nil, nil, 786, nil, nil, 786, - 786, nil, nil, 786, nil, nil, nil, nil, nil, 786, - nil, nil, nil, nil, nil, nil, nil, 786, nil, nil, - nil, nil, 786, 786, 786, 786, 786, 786, nil, nil, - nil, 786, 786, 788, 788, 788, nil, 788, nil, nil, - nil, 788, 788, nil, nil, nil, 788, nil, 788, 788, - 788, 788, 788, 788, 788, nil, nil, nil, nil, 788, - 788, 788, 788, 788, 788, 788, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 788, nil, nil, 788, 788, - 788, 788, 788, 788, 788, 788, 788, 788, nil, 788, - 788, nil, 788, 788, 788, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 788, nil, nil, 788, nil, nil, - 788, 788, nil, nil, 788, nil, nil, nil, nil, nil, - 788, nil, nil, nil, nil, nil, nil, nil, 788, nil, - nil, nil, nil, 788, 788, 788, 788, 788, 788, nil, - nil, nil, 788, 788, 802, 802, 802, nil, 802, nil, - nil, nil, 802, 802, nil, nil, nil, 802, nil, 802, - 802, 802, 802, 802, 802, 802, nil, nil, nil, nil, - 802, 802, 802, 802, 802, 802, 802, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 802, nil, nil, 802, - 802, 802, 802, 802, 802, 802, 802, 802, 802, nil, - 802, 802, nil, 802, 802, 802, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 802, nil, nil, 802, nil, - nil, 802, 802, nil, nil, 802, nil, nil, nil, nil, - nil, 802, nil, nil, nil, nil, nil, nil, nil, 802, - nil, nil, nil, nil, 802, 802, 802, 802, 802, 802, - nil, nil, nil, 802, 802, 820, 820, 820, nil, 820, - nil, nil, nil, 820, 820, nil, nil, nil, 820, nil, - 820, 820, 820, 820, 820, 820, 820, nil, nil, nil, - nil, 820, 820, 820, 820, 820, 820, 820, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 820, nil, nil, - 820, 820, 820, 820, 820, 820, 820, 820, 820, 820, - nil, 820, 820, nil, nil, nil, 820, nil, 682, 682, - 682, 682, 682, 682, 682, 682, 682, 682, 682, nil, - 682, 682, nil, nil, 682, 682, 820, nil, nil, 820, - nil, nil, 820, 820, nil, nil, 820, nil, nil, nil, - 682, nil, 682, nil, 682, 682, 682, 682, 682, 682, - 682, nil, 682, nil, nil, 820, 820, 820, 820, 820, - 820, nil, nil, nil, 820, 820, 822, 822, 822, 682, - 822, nil, nil, nil, 822, 822, nil, nil, nil, 822, - nil, 822, 822, 822, 822, 822, 822, 822, nil, nil, - nil, nil, 822, 822, 822, 822, 822, 822, 822, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 822, nil, - nil, 822, 822, 822, 822, 822, 822, 822, 822, 822, - 822, nil, 822, 822, nil, 822, 822, 822, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 822, nil, nil, - 822, nil, nil, 822, 822, nil, nil, 822, nil, 822, - nil, nil, nil, 822, nil, nil, nil, nil, nil, nil, - nil, 822, nil, nil, nil, nil, 822, 822, 822, 822, - 822, 822, nil, nil, nil, 822, 822, 827, 827, 827, - nil, 827, nil, nil, nil, 827, 827, nil, nil, nil, - 827, nil, 827, 827, 827, 827, 827, 827, 827, nil, - nil, nil, nil, 827, 827, 827, 827, 827, 827, 827, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 827, - nil, nil, 827, 827, 827, 827, 827, 827, 827, 827, - 827, 827, nil, 827, 827, nil, nil, nil, 827, nil, - 684, 684, 684, 684, 684, 684, 684, 684, 684, 684, - 684, nil, 684, 684, nil, nil, 684, 684, 827, nil, - nil, 827, nil, nil, 827, 827, nil, nil, 827, nil, - nil, nil, 684, nil, 684, nil, 684, 684, 684, 684, - 684, 684, 684, nil, 684, nil, nil, 827, 827, 827, - 827, 827, 827, nil, nil, nil, 827, 827, 832, 832, - 832, 684, 832, nil, nil, nil, 832, 832, nil, nil, - nil, 832, nil, 832, 832, 832, 832, 832, 832, 832, - nil, nil, nil, nil, 832, 832, 832, 832, 832, 832, - 832, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 832, nil, nil, 832, 832, 832, 832, 832, 832, 832, - 832, 832, 832, nil, 832, 832, nil, 832, 832, 832, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 832, - nil, nil, 832, nil, nil, 832, 832, nil, nil, 832, - nil, 832, nil, 832, nil, 832, nil, nil, nil, nil, - nil, nil, nil, 832, nil, nil, nil, nil, 832, 832, - 832, 832, 832, 832, nil, nil, nil, 832, 832, 835, - 835, 835, nil, 835, nil, nil, nil, 835, 835, nil, - nil, nil, 835, nil, 835, 835, 835, 835, 835, 835, - 835, nil, nil, nil, nil, 835, 835, 835, 835, 835, - 835, 835, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 835, nil, nil, 835, 835, 835, 835, 835, 835, - 835, 835, 835, 835, nil, 835, 835, nil, 835, 835, - 835, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 835, nil, nil, 835, nil, nil, 835, 835, nil, nil, - 835, nil, 835, nil, 835, nil, 835, nil, nil, nil, - nil, nil, nil, nil, 835, nil, nil, nil, nil, 835, - 835, 835, 835, 835, 835, nil, nil, nil, 835, 835, - 861, 861, 861, nil, 861, nil, nil, nil, 861, 861, - nil, nil, nil, 861, nil, 861, 861, 861, 861, 861, - 861, 861, nil, nil, nil, nil, 861, 861, 861, 861, - 861, 861, 861, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 861, nil, nil, 861, 861, 861, 861, 861, - 861, 861, 861, 861, 861, nil, 861, 861, nil, nil, - nil, 861, nil, 687, 687, 687, 687, 687, 687, 687, - 687, 687, 687, 687, nil, 687, 687, nil, nil, 687, - 687, 861, nil, nil, 861, nil, nil, 861, 861, nil, - nil, 861, nil, nil, nil, 687, nil, 687, nil, 687, - 687, 687, 687, 687, 687, 687, nil, 687, nil, nil, - 861, 861, 861, 861, 861, 861, nil, nil, nil, 861, - 861, 864, 864, 864, 687, 864, nil, nil, nil, 864, - 864, nil, nil, nil, 864, nil, 864, 864, 864, 864, - 864, 864, 864, nil, nil, nil, nil, 864, 864, 864, - 864, 864, 864, 864, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 864, nil, nil, 864, 864, 864, 864, - 864, 864, 864, 864, 864, 864, nil, 864, 864, nil, - 864, 864, 864, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 864, nil, nil, 864, nil, nil, 864, 864, - nil, nil, 864, nil, nil, nil, nil, nil, 864, nil, - nil, nil, nil, nil, nil, nil, 864, nil, nil, nil, - nil, 864, 864, 864, 864, 864, 864, nil, nil, nil, - 864, 864, 867, 867, 867, nil, 867, nil, nil, nil, - 867, 867, nil, nil, nil, 867, nil, 867, 867, 867, - 867, 867, 867, 867, nil, nil, nil, nil, 867, 867, - 867, 867, 867, 867, 867, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 867, nil, nil, 867, 867, 867, - 867, 867, 867, 867, 867, 867, 867, nil, 867, 867, - nil, 867, 867, 867, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 867, nil, nil, 867, nil, nil, 867, - 867, nil, nil, 867, nil, nil, nil, nil, nil, 867, - nil, nil, nil, nil, nil, nil, nil, 867, nil, nil, - nil, nil, 867, 867, 867, 867, 867, 867, nil, nil, - nil, 867, 867, 875, 875, 875, nil, 875, nil, nil, - nil, 875, 875, nil, nil, nil, 875, nil, 875, 875, - 875, 875, 875, 875, 875, nil, nil, nil, nil, 875, - 875, 875, 875, 875, 875, 875, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 875, nil, nil, 875, 875, - 875, 875, 875, 875, 875, 875, 875, 875, nil, 875, - 875, nil, nil, nil, 875, nil, 689, 689, 689, 689, - 689, 689, 689, 689, 689, 689, 689, nil, 689, 689, - nil, nil, 689, 689, 875, nil, nil, 875, nil, nil, - 875, 875, nil, nil, 875, nil, nil, nil, 689, nil, - 689, nil, 689, 689, 689, 689, 689, 689, 689, nil, - 689, nil, nil, 875, 875, 875, 875, 875, 875, nil, - nil, nil, 875, 875, 880, 880, 880, 689, 880, nil, - nil, nil, 880, 880, nil, nil, nil, 880, nil, 880, - 880, 880, 880, 880, 880, 880, nil, nil, nil, nil, - 880, 880, 880, 880, 880, 880, 880, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 880, nil, nil, 880, - 880, 880, 880, 880, 880, 880, 880, 880, 880, nil, - 880, 880, nil, 880, 880, 880, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 880, nil, nil, 880, nil, - nil, 880, 880, nil, nil, 880, nil, 880, nil, 880, - nil, 880, nil, nil, nil, nil, nil, nil, nil, 880, - nil, nil, nil, nil, 880, 880, 880, 880, 880, 880, - nil, nil, nil, 880, 880, 886, 886, 886, nil, 886, - nil, nil, nil, 886, 886, nil, nil, nil, 886, nil, - 886, 886, 886, 886, 886, 886, 886, nil, nil, nil, - nil, 886, 886, 886, 886, 886, 886, 886, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 886, nil, nil, - 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, - nil, 886, 886, nil, nil, nil, 886, nil, 694, 694, - 694, 694, 694, 694, 694, 694, 694, 694, 694, nil, - 694, 694, nil, nil, 694, 694, 886, nil, nil, 886, - nil, nil, 886, 886, nil, nil, 886, nil, nil, nil, - 694, nil, 694, nil, 694, 694, 694, 694, 694, 694, - 694, nil, 694, nil, nil, 886, 886, 886, 886, 886, - 886, nil, nil, nil, 886, 886, 889, 889, 889, 694, - 889, nil, nil, nil, 889, 889, nil, nil, nil, 889, - nil, 889, 889, 889, 889, 889, 889, 889, nil, nil, - nil, nil, 889, 889, 889, 889, 889, 889, 889, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 889, nil, - nil, 889, 889, 889, 889, 889, 889, 889, 889, 889, - 889, nil, 889, 889, nil, 889, 889, 889, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 889, nil, nil, - 889, nil, nil, 889, 889, nil, nil, 889, nil, nil, - nil, nil, nil, 889, nil, nil, nil, nil, nil, nil, - nil, 889, nil, nil, nil, nil, 889, 889, 889, 889, - 889, 889, nil, nil, nil, 889, 889, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, - 64, nil, nil, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, nil, nil, nil, nil, nil, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, - nil, nil, nil, nil, nil, nil, 64, 64, nil, 64, - 64, 64, 64, nil, 64, 64, nil, nil, 64, nil, - nil, nil, nil, 64, 64, 64, 64, nil, nil, nil, - nil, nil, 64, nil, nil, nil, nil, nil, nil, nil, - 64, 64, nil, 64, 64, 64, 64, 64, 64, 64, - 64, 64, nil, 64, nil, nil, 64, 664, 664, 664, - 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, - 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, - 664, nil, nil, 664, 664, 664, 664, 664, 664, 664, - 664, 664, 664, nil, nil, nil, nil, nil, 664, 664, - 664, 664, 664, 664, 664, 664, nil, nil, 664, nil, - nil, nil, nil, nil, nil, nil, 664, 664, nil, 664, - 664, 664, 664, nil, 664, 664, nil, nil, 664, nil, - nil, nil, nil, 664, 664, 664, 664, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 664, 664, nil, 664, 664, 664, 664, 664, 664, 664, - 664, 664, nil, 664, nil, nil, 664, 581, 581, 581, - 581, 581, 581, 581, 581, 581, 581, 581, nil, 581, - 581, nil, nil, 581, 581, nil, nil, nil, 581, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 581, - nil, 581, nil, 581, 581, 581, 581, 581, 581, 581, - nil, 581, nil, nil, nil, nil, nil, nil, nil, 192, - 192, nil, nil, 192, nil, nil, nil, nil, 581, nil, - 581, 192, 192, nil, 192, 192, 192, 192, nil, 192, - 192, nil, nil, 192, nil, nil, nil, nil, 192, 192, - 192, 192, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 192, 192, nil, 192, 192, - 192, 192, 192, 192, 192, 192, 192, nil, 192, 193, - 193, 192, nil, 193, nil, nil, nil, nil, nil, nil, - nil, 193, 193, nil, 193, 193, 193, 193, nil, 193, - 193, nil, nil, 193, nil, nil, nil, nil, 193, 193, - 193, 193, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 193, 193, nil, 193, 193, - 193, 193, 193, 193, 193, 193, 193, nil, 193, 251, - 251, 193, nil, 251, nil, nil, nil, nil, nil, nil, - nil, 251, 251, nil, 251, 251, 251, 251, nil, 251, - 251, nil, nil, 251, nil, nil, nil, nil, 251, 251, - 251, 251, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 251, 251, nil, 251, 251, - 251, 251, 251, 251, 251, 251, 251, nil, 251, 252, - 252, 251, nil, 252, nil, nil, nil, nil, nil, nil, - nil, 252, 252, nil, 252, 252, 252, 252, nil, 252, - 252, nil, nil, 252, nil, nil, nil, nil, 252, 252, - 252, 252, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 252, 252, nil, 252, 252, - 252, 252, 252, 252, 252, 252, 252, nil, 252, 391, - 391, 252, nil, 391, nil, nil, nil, nil, nil, nil, - nil, 391, 391, nil, 391, 391, 391, 391, nil, 391, - 391, nil, nil, 391, nil, nil, nil, nil, 391, 391, - 391, 391, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 391, 391, nil, 391, 391, - 391, 391, 391, 391, 391, 391, 391, nil, 391, 392, - 392, 391, nil, 392, nil, nil, nil, nil, nil, nil, - nil, 392, 392, nil, 392, 392, 392, 392, nil, 392, - 392, nil, nil, 392, nil, nil, nil, nil, 392, 392, - 392, 392, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 392, 392, nil, 392, 392, - 392, 392, 392, 392, 392, 392, 392, nil, 392, nil, - nil, 392, 423, 423, 423, 423, 423, 423, 423, 423, - 423, 423, 423, nil, 423, 423, nil, nil, 423, 423, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 423, nil, 423, nil, 423, 423, - 423, 423, 423, 423, 423, nil, 423, nil, nil, nil, - nil, nil, nil, 457, 457, nil, nil, 457, nil, nil, - nil, nil, nil, 423, 423, 457, 457, nil, 457, 457, - 457, 457, nil, 457, 457, nil, nil, 457, nil, nil, - nil, nil, 457, 457, 457, 457, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 457, - 457, nil, 457, 457, 457, 457, 457, 457, 457, 457, - 457, nil, 457, 458, 458, 457, nil, 458, nil, nil, - nil, nil, nil, nil, nil, 458, 458, nil, 458, 458, - 458, 458, nil, 458, 458, nil, nil, 458, nil, nil, - nil, nil, 458, 458, 458, 458, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 458, - 458, nil, 458, 458, 458, 458, 458, 458, 458, 458, - 458, nil, 458, 466, 466, 458, nil, 466, nil, nil, - nil, nil, nil, nil, nil, 466, 466, nil, 466, 466, - 466, 466, nil, 466, 466, nil, nil, 466, nil, nil, - nil, nil, 466, 466, 466, 466, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 466, - 466, nil, 466, 466, 466, 466, 466, 466, 466, 466, - 466, nil, 466, 467, 467, 466, nil, 467, nil, nil, - nil, nil, nil, nil, nil, 467, 467, nil, 467, 467, - 467, 467, nil, 467, 467, nil, nil, 467, nil, nil, - nil, nil, 467, 467, 467, 467, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 467, - 467, nil, 467, 467, 467, 467, 467, 467, 467, 467, - 467, nil, 467, 498, 498, 467, nil, 498, nil, nil, - nil, nil, nil, nil, nil, 498, 498, nil, 498, 498, - 498, 498, nil, 498, 498, nil, nil, 498, nil, nil, - nil, nil, 498, 498, 498, 498, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 498, - 498, nil, 498, 498, 498, 498, 498, 498, 498, 498, - 498, nil, 498, 499, 499, 498, nil, 499, nil, nil, - nil, nil, nil, nil, nil, 499, 499, nil, 499, 499, - 499, 499, nil, 499, 499, nil, nil, 499, nil, nil, - nil, nil, 499, 499, 499, 499, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 499, - 499, nil, 499, 499, 499, 499, 499, 499, 499, 499, - 499, nil, 499, 505, 505, 499, nil, 505, nil, nil, - nil, nil, nil, nil, nil, 505, 505, nil, 505, 505, - 505, 505, nil, 505, 505, nil, nil, 505, nil, nil, - nil, nil, 505, 505, 505, 505, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 505, - 505, nil, 505, 505, 505, 505, 505, 505, 505, 505, - 505, nil, 505, 507, 507, 505, nil, 507, nil, nil, - nil, nil, nil, nil, nil, 507, 507, nil, 507, 507, - 507, 507, nil, 507, 507, nil, nil, 507, nil, nil, - nil, nil, 507, 507, 507, 507, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 507, - 507, nil, 507, 507, 507, 507, 507, 507, 507, 507, - 507, nil, 507, 578, 578, 507, nil, 578, nil, nil, - nil, nil, nil, nil, nil, 578, 578, nil, 578, 578, - 578, 578, nil, 578, 578, nil, nil, 578, nil, nil, - nil, nil, 578, 578, 578, 578, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 578, - 578, nil, 578, 578, 578, 578, 578, 578, 578, 578, - 578, nil, 578, 579, 579, 578, nil, 579, nil, nil, - nil, nil, nil, nil, nil, 579, 579, nil, 579, 579, - 579, 579, nil, 579, 579, nil, nil, 579, nil, nil, - nil, nil, 579, 579, 579, 579, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 579, - 579, nil, 579, 579, 579, 579, 579, 579, 579, 579, - 579, nil, 579, 823, 823, 579, nil, 823, nil, nil, - nil, nil, nil, nil, nil, 823, 823, nil, 823, 823, - 823, 823, nil, 823, 823, nil, nil, 823, nil, nil, - nil, nil, 823, 823, 823, 823, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 823, - 823, nil, 823, 823, 823, 823, 823, 823, 823, 823, - 823, nil, 823, 824, 824, 823, nil, 824, nil, nil, - nil, nil, nil, nil, nil, 824, 824, nil, 824, 824, - 824, 824, nil, 824, 824, nil, nil, 824, nil, nil, - nil, nil, 824, 824, 824, 824, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 824, - 824, nil, 824, 824, 824, 824, 824, 824, 824, 824, - 824, nil, 824, nil, nil, 824, 480, 480, 480, 480, - 480, 480, 480, 480, 480, 480, 480, nil, 480, 480, - nil, nil, 480, 480, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 480, nil, - 480, nil, 480, 480, 480, 480, 480, 480, 480, nil, - 480, nil, 731, 731, 731, 731, 731, 731, 731, 731, - 731, 731, 731, nil, 731, 731, 480, 480, 731, 731, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 731, nil, 731, nil, 731, 731, - 731, 731, 731, 731, 731, nil, 731, nil, 767, 767, - 767, 767, 767, 767, 767, 767, 767, 767, 767, nil, - 767, 767, 731, 731, 767, 767, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 767, nil, 767, nil, 767, 767, 767, 767, 767, 767, - 767, nil, 767, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 767 ] - -racc_action_pointer = [ - 1233, 30, nil, -98, 863, 4770, 4891, 5012, -53, 2, - 71, 90, 160, 218, 174, 130, nil, 5125, 5246, 6094, - 234, nil, 5367, 5488, 5609, 292, 138, 5730, 5851, nil, - 1355, 5972, 6093, nil, 146, 316, 245, 346, 6214, 6335, - 6456, 183, 300, nil, nil, nil, nil, nil, nil, nil, - 214, 1477, 6577, 6698, 6819, 58, 6940, 7061, nil, nil, - 735, 7182, 7303, 7424, 22775, nil, nil, nil, nil, nil, - -92, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 7545, nil, nil, nil, 7666, nil, nil, nil, - nil, nil, nil, nil, nil, 311, nil, 863, nil, nil, - nil, 7787, 7908, 8029, 8150, 8271, 981, nil, 221, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 196, nil, 1599, 1721, 8392, 8513, - 8634, 8755, 23000, 23060, 8876, 8997, 9118, nil, 377, -67, - 279, -52, 212, 274, 1843, nil, nil, 9239, 9360, 9481, - 9602, 9723, 9844, 9965, 10086, 10207, 10328, 10449, 10570, 10691, - 10812, 10933, 11054, 11175, 11296, 11417, 11538, 11659, 11780, 11901, - 12022, 12143, 12264, 12385, nil, nil, nil, 7183, nil, 242, - 254, 12506, nil, 12627, 310, nil, nil, nil, nil, nil, - nil, 23120, 23180, 313, 12748, 12869, nil, nil, nil, nil, - nil, nil, nil, 12990, 325, 1965, 333, 352, 315, 13111, - 2087, 399, 496, 430, 520, 411, 382, 161, nil, 443, - 430, nil, nil, 335, 472, 486, 521, nil, 498, nil, - 13232, nil, 565, 566, 457, nil, 460, 119, 136, 13353, - 493, 147, 479, 244, nil, 482, -7, 8, 13474, 13595, - -67, 32, 464, -9, 522, 545, -1, 575, nil, nil, - 319, 345, 115, nil, 614, nil, 9, 13716, nil, nil, - 311, 419, 453, 456, 457, 478, 488, 499, nil, 519, - nil, 13837, nil, 149, 207, 235, 246, -35, 279, nil, - 1103, nil, nil, nil, nil, nil, nil, 13958, nil, nil, - nil, nil, 509, 511, nil, nil, 735, nil, 495, 14071, - nil, 499, nil, nil, 7304, 535, 340, 342, 14192, nil, - nil, 0, 541, 107, nil, 14313, 14434, nil, 7425, nil, - nil, 23240, 23300, 14555, -33, 14676, 14797, 14918, 614, 863, - 377, 384, 566, 574, 575, 576, 2941, 3063, 3185, 1599, - 980, 1721, 1843, 1965, 2087, 2209, 2331, 2453, 2575, 249, - 465, 2697, 2819, 23348, -48, nil, 15039, nil, 15160, 514, - nil, 15281, 321, nil, nil, 376, nil, nil, 563, 531, - -64, 529, 630, nil, nil, 15402, -27, -13, 571, nil, - 572, 544, nil, nil, nil, 586, 15523, 23414, 23474, 617, - 606, nil, nil, 15644, 15765, 15886, 23534, 23594, 13112, 16007, - 688, 16128, nil, 582, nil, nil, 16249, nil, nil, 16370, - 24122, nil, 16491, nil, nil, nil, 2209, 711, nil, nil, - 2331, 68, 109, 708, 716, 2453, 16612, 16733, 23654, 23714, - 4, nil, nil, 658, nil, 23774, 16854, 23834, nil, nil, - 16975, 100, -34, 2575, 997, nil, nil, nil, -32, nil, - nil, nil, 598, nil, nil, nil, 609, nil, 147, nil, - nil, 606, nil, nil, 17096, nil, nil, 17209, 17330, nil, - 349, 17451, 17572, 648, nil, nil, 17693, 649, nil, 17814, - 86, 115, 493, 614, 655, 1106, 17935, 18056, nil, 2697, - 18177, 621, nil, 666, 18298, nil, 674, nil, 663, nil, - nil, nil, nil, nil, 113, nil, 673, 674, 23894, 23954, - 18419, 22933, 69, 643, 18540, nil, 683, nil, 2819, 2941, - nil, 1, nil, 681, 63, 112, 687, 347, 735, 688, - 19630, 712, 714, -2, 772, nil, 3063, 654, 707, nil, - nil, 707, 18661, nil, nil, 506, nil, 800, nil, nil, - nil, nil, nil, 810, nil, 814, 700, 15, 18782, 738, - 13, 23, 25, 75, 18903, 348, 788, nil, 740, 3185, - 331, nil, nil, 835, 3307, 1284, 337, 718, 719, 726, - nil, nil, nil, nil, nil, 724, nil, nil, nil, nil, - 806, nil, nil, 809, 22885, 773, nil, nil, nil, nil, - nil, 3429, nil, nil, nil, nil, nil, 20114, 744, 19024, - 19145, nil, 21324, nil, 21566, nil, nil, 21929, nil, 22292, - 19266, 19387, 19508, 167, 22534, nil, 745, 984, 19629, nil, - 770, 868, 760, nil, 19750, 761, 3551, nil, nil, 802, - 803, -63, 871, 19871, nil, 19992, 772, nil, 832, 813, - 933, 738, nil, nil, 3673, nil, nil, 31, 20113, nil, - nil, 24168, 938, nil, 20234, 941, 3795, 3917, nil, nil, - 20355, 4039, nil, 26, 133, nil, 942, nil, 4161, nil, - 946, 836, nil, 1406, nil, -43, nil, nil, 436, 20476, - nil, nil, nil, nil, 862, nil, nil, 24214, 20597, 20718, - 863, 866, 920, 907, 847, 884, nil, nil, nil, nil, - 20839, nil, 873, 903, 869, nil, 20960, 870, 21081, nil, - nil, nil, nil, nil, 4283, nil, nil, nil, 32, nil, - 999, 1001, 21202, 332, nil, nil, 1002, nil, 936, 898, - 899, nil, nil, 900, 899, nil, nil, 1528, nil, nil, - 21323, 1106, 21444, 24014, 24074, 918, 933, 21565, 5973, nil, - nil, nil, 21686, 914, nil, 21807, 918, 1046, 4405, nil, - nil, nil, nil, nil, nil, 4527, nil, nil, 282, nil, - nil, nil, 4649, nil, 927, 959, 965, 362, 400, 482, - 977, 21928, nil, nil, 22049, 931, nil, 22170, nil, nil, - 545, 1054, 938, 1057, 972, 22291, 980, nil, 945, nil, - 22412, 948, nil, nil, nil, nil, 22533, nil, nil, 22654, - nil, nil, 952, nil ] - -racc_action_default = [ - -4, -497, -1, -485, -5, -497, -497, -497, -497, -497, - -497, -497, -497, -497, -271, -32, -33, -497, -497, -38, - -40, -41, -282, -315, -316, -45, -249, -361, -285, -58, - -4, -62, -67, -68, -497, -428, -497, -497, -497, -497, - -497, -487, -214, -264, -265, -266, -267, -268, -269, -270, - -475, -4, -497, -496, -467, -288, -497, -497, -292, -295, - -485, -497, -497, -497, -497, -317, -318, -381, -382, -383, - -384, -385, -399, -388, -401, -401, -392, -397, -411, -401, - -413, -414, -417, -418, -419, -420, -421, -422, -423, -424, - -425, -426, -427, -430, -431, -497, -3, -486, -492, -493, - -494, -497, -497, -497, -497, -497, -6, -8, -497, -93, - -94, -95, -96, -97, -98, -99, -100, -101, -105, -106, - -107, -108, -109, -110, -111, -112, -113, -114, -115, -116, - -117, -118, -119, -120, -121, -122, -123, -124, -125, -126, - -127, -128, -129, -130, -131, -132, -133, -134, -135, -136, - -137, -138, -139, -140, -141, -142, -143, -144, -145, -146, - -147, -148, -149, -150, -151, -152, -153, -154, -155, -156, - -157, -158, -159, -160, -161, -162, -163, -164, -165, -166, - -167, -168, -169, -170, -13, -102, -4, -4, -497, -497, - -497, -496, -497, -497, -497, -497, -497, -36, -497, -428, - -497, -271, -497, -497, -4, -37, -206, -497, -497, -497, - -497, -497, -497, -497, -497, -497, -497, -497, -497, -497, - -497, -497, -497, -497, -497, -497, -497, -497, -497, -497, - -497, -497, -497, -497, -351, -353, -42, -215, -228, -258, - -258, -497, -236, -497, -259, -282, -315, -316, -470, -43, - -44, -497, -497, -50, -496, -497, -287, -356, -362, -364, - -56, -360, -57, -497, -58, -4, -497, -497, -63, -65, - -4, -72, -497, -497, -79, -285, -487, -497, -319, -361, - -497, -66, -70, -278, -415, -416, -497, -191, -192, -207, - -497, -488, -373, -497, -274, -216, -487, -489, -489, -497, - -497, -489, -497, -489, -289, -39, -497, -497, -497, -497, - -485, -497, -486, -428, -497, -497, -271, -497, -331, -332, - -88, -89, -497, -91, -497, -271, -497, -497, -428, -308, - -93, -94, -131, -132, -148, -153, -160, -163, -310, -497, - -465, -497, -386, -497, -497, -497, -497, -497, -497, 894, - -7, -495, -14, -15, -16, -17, -18, -497, -10, -11, - -12, -103, -497, -497, -21, -29, -171, -259, -497, -497, - -22, -30, -31, -23, -173, -497, -476, -477, -226, -478, - -479, -476, -249, -477, -359, -481, -482, -28, -180, -34, - -35, -497, -497, -496, -278, -497, -497, -497, -181, -182, - -183, -184, -185, -186, -187, -188, -193, -194, -195, -196, - -197, -198, -199, -200, -201, -202, -203, -204, -205, -208, - -209, -210, -211, -497, -347, -229, -497, -231, -497, -258, - -256, -497, -249, -476, -477, -249, -48, -51, -497, -487, - -487, -258, -228, -250, -251, -252, -347, -347, -497, -284, - -497, -59, -276, -71, -64, -497, -496, -497, -497, -78, - -497, -415, -416, -497, -497, -497, -497, -497, -212, -497, - -496, -496, -273, -487, -217, -218, -491, -490, -220, -491, - -487, -280, -491, -469, -281, -468, -4, -320, -321, -322, - -4, -497, -497, -497, -497, -4, -497, -496, -497, -497, - -278, -301, -88, -89, -90, -497, -496, -497, -304, -432, - -497, -497, -497, -4, -445, -312, -483, -484, -487, -387, - -400, -403, -497, -405, -389, -402, -497, -391, -497, -394, - -396, -497, -412, -9, -497, -19, -20, -497, -497, -263, - -279, -497, -497, -52, -227, -357, -497, -54, -358, -497, - -476, -477, -480, -277, -497, -171, -497, -497, -349, -4, - -497, -258, -257, -260, -497, -471, -497, -235, -497, -472, - -46, -354, -47, -355, -347, -222, -497, -497, -497, -497, - -497, -38, -497, -258, -497, -248, -497, -254, -4, -4, - -283, -59, -69, -497, -476, -477, -226, -75, -77, -497, - -179, -189, -190, -497, -496, -329, -4, -374, -496, -375, - -376, -497, -497, -260, -221, -496, -323, -496, -293, -324, - -325, -326, -296, -497, -299, -497, -367, -497, -497, -497, - -476, -477, -480, -277, -497, -88, -89, -92, -497, -4, - -497, -434, -306, -497, -4, -445, -497, -464, -464, -464, - -444, -446, -447, -448, -449, -450, -451, -454, -456, -457, - -459, -460, -461, -497, -497, -497, -404, -407, -408, -409, - -410, -4, -390, -393, -395, -398, -104, -172, -261, -497, - -497, -25, -175, -26, -176, -53, -27, -177, -55, -178, - -497, -497, -497, -279, -213, -333, -335, -345, -497, -348, - -497, -497, -258, -233, -497, -258, -4, -223, -224, -226, - -226, -487, -497, -497, -241, -497, -258, -253, -497, -497, - -497, -73, -286, -2, -4, -380, -330, -497, -497, -378, - -275, -487, -497, -327, -497, -497, -4, -4, -298, -300, - -497, -4, -369, -279, -497, -279, -497, -433, -4, -309, - -497, -487, -436, -497, -440, -497, -442, -443, -497, -497, - -458, -462, -313, -466, -497, -262, -24, -174, -497, -336, - -80, -497, -497, -87, -344, -497, -346, -350, -352, -230, - -497, -232, -497, -497, -258, -238, -497, -258, -497, -247, - -255, -363, -365, -379, -4, -377, -219, -290, -497, -291, - -497, -497, -497, -496, -302, -305, -497, -311, -497, -464, - -464, -452, -463, -464, -497, -455, -453, -445, -406, -334, - -497, -341, -496, -497, -497, -86, -497, -497, -258, -49, - -225, -237, -497, -258, -243, -497, -258, -373, -4, -294, - -297, -368, -366, -370, -371, -4, -307, -435, -497, -438, - -439, -441, -4, -337, -340, -497, -497, -82, -84, -83, - -85, -497, -343, -234, -497, -258, -239, -497, -242, -372, - -496, -497, -464, -497, -497, -497, -81, -342, -258, -244, - -497, -258, -328, -303, -437, -314, -497, -339, -240, -497, - -245, -338, -258, -246 ] - -racc_goto_table = [ - 10, 205, 240, 240, 240, 10, 268, 438, 112, 112, - 100, 300, 338, 470, 293, 644, 242, 242, 242, 440, - 107, 185, 238, 238, 238, 115, 115, 117, 117, 494, - 10, 486, 490, 650, 303, 437, 239, 239, 239, 253, - 260, 262, 604, 290, 365, 372, 732, 618, 622, 96, - 565, 10, 815, 296, 257, 261, 281, 571, 504, 520, - 573, 318, 529, 236, 249, 250, 112, 100, 301, 559, - 810, 264, 813, 266, 106, 475, 478, 344, 345, 483, - 1, 485, 348, 723, 754, 756, 757, 326, 329, 306, - 307, 588, 589, 310, 97, 13, 184, 10, 319, 357, - 13, 565, 574, 534, 587, 10, 311, 443, 586, 718, - 340, 302, 198, 198, 304, 317, 508, 198, 198, 198, - 339, 515, 473, 308, 736, 13, 272, 272, 309, 737, - 634, 278, 278, 845, 352, 353, 354, 355, 639, 748, - 513, 197, 514, 664, 817, 815, 13, 198, 198, 375, - 696, 198, 198, 700, 424, 198, 314, 324, 324, 446, - 447, 278, 278, 278, 650, 872, 350, 627, 842, 608, - 727, 364, 370, 373, 356, 342, 294, 387, 343, 346, - 305, 305, 528, 347, 305, 666, 10, 10, 671, 735, - 751, 296, 13, 809, 811, 386, 198, 198, 198, 198, - 13, 2, 368, 368, 10, nil, nil, nil, nil, nil, - nil, 623, nil, nil, nil, nil, nil, nil, nil, 706, - nil, nil, nil, 605, 610, 305, 305, 305, 305, nil, - nil, 267, nil, nil, 240, 240, nil, nil, nil, nil, - nil, 637, nil, 240, 674, nil, 849, 850, 242, 242, - 851, nil, nil, nil, 442, 238, nil, 242, nil, nil, - nil, nil, nil, 238, nil, 10, nil, nil, 441, 239, - 10, nil, nil, nil, nil, nil, nil, 239, 460, nil, - nil, 13, 13, 198, 198, 198, 198, nil, nil, 198, - 198, 198, 14, 454, nil, 439, 444, 14, 474, 13, - 804, 882, nil, 427, 448, 257, 264, 261, 450, 884, - nil, 264, nil, 455, nil, nil, nil, 100, 852, 389, - 390, nil, 14, 274, 274, 685, 565, 609, nil, 688, - nil, nil, nil, 509, 571, 573, 650, 565, nil, nil, - nil, 491, 492, 14, nil, 711, nil, nil, nil, 198, - 198, 554, 741, 316, 325, 325, 493, 725, 198, 112, - 13, 729, nil, nil, 272, 13, nil, nil, 605, 278, - 605, 533, nil, nil, nil, 843, 115, nil, 117, nil, - nil, nil, nil, nil, nil, nil, nil, 362, 363, 14, - nil, 543, nil, 296, 386, 547, nil, 14, nil, nil, - nil, nil, nil, 198, 198, 267, 561, nil, nil, nil, - 548, nil, nil, nil, 593, nil, nil, nil, nil, nil, - nil, nil, 198, nil, nil, 583, nil, nil, nil, nil, - nil, nil, 305, 305, nil, nil, 198, nil, nil, 585, - nil, 576, 577, nil, nil, 570, nil, nil, 572, nil, - nil, 512, 794, nil, nil, 629, 296, 565, nil, nil, - 386, nil, nil, nil, 638, 518, 267, nil, nil, 386, - nil, 267, nil, nil, nil, 611, 643, nil, 14, 14, - nil, nil, 614, nil, nil, 368, 10, nil, 198, nil, - 10, nil, 567, nil, nil, 10, 14, 296, 619, 619, - nil, 386, 565, nil, nil, nil, 296, 386, nil, nil, - 626, nil, nil, 10, nil, nil, nil, nil, 641, 642, - 665, 844, nil, 838, 681, 683, nil, nil, nil, 686, - nil, nil, 695, nil, nil, nil, 112, nil, nil, nil, - 198, nil, nil, 640, nil, nil, nil, nil, 676, nil, - nil, 198, nil, 115, nil, 117, 605, 14, 869, 10, - 561, 274, 14, nil, 198, nil, nil, nil, nil, 294, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 712, 13, nil, nil, nil, 13, nil, nil, 10, 10, - 13, nil, 198, 603, nil, nil, 378, 382, 35, nil, - nil, 198, 746, 35, nil, 198, 10, 750, 13, nil, - nil, nil, 762, 12, nil, nil, nil, nil, 12, nil, - nil, nil, nil, 605, 703, nil, nil, 548, 35, 271, - 271, nil, nil, nil, 305, nil, 198, 198, nil, 10, - nil, 198, nil, 12, 10, nil, 714, 747, nil, 35, - nil, nil, 272, 752, 13, 432, 435, 278, nil, 313, - 328, 328, 328, 766, 12, nil, 112, 744, nil, nil, - nil, 10, nil, nil, nil, 198, nil, nil, nil, nil, - nil, nil, nil, 13, 13, nil, nil, 615, nil, nil, - nil, 617, nil, 787, nil, 35, 625, 774, 776, nil, - nil, 13, nil, 35, nil, nil, 10, 785, nil, nil, - 12, 806, nil, 783, nil, nil, nil, nil, 12, nil, - nil, nil, nil, nil, 10, nil, nil, 784, 795, 198, - nil, nil, nil, 796, 13, nil, 10, 10, nil, 13, - nil, 10, nil, nil, 819, nil, nil, nil, 10, nil, - nil, 619, nil, 808, nil, nil, nil, nil, 305, nil, - 701, nil, nil, nil, nil, 779, 13, 798, 781, nil, - nil, nil, nil, nil, nil, 198, nil, nil, 14, 789, - 856, nil, 14, nil, 35, 35, nil, 14, nil, 719, - 720, nil, 771, 771, 10, 378, 382, 278, 278, 12, - 12, 13, 35, nil, nil, 14, nil, 726, nil, nil, - nil, nil, 865, nil, 670, 873, nil, 12, nil, 13, - 853, 854, 296, 771, nil, nil, 386, 862, 278, 198, - nil, 13, 13, nil, nil, nil, 13, nil, 10, nil, - nil, nil, nil, 13, nil, 10, nil, 831, nil, 274, - 834, 14, 10, nil, nil, nil, nil, nil, 305, nil, - nil, 877, 599, 35, 272, nil, nil, 271, 35, 278, - nil, 599, 764, nil, nil, 887, nil, nil, 12, nil, - 14, 14, nil, 12, nil, nil, 891, nil, nil, 13, - nil, 863, nil, nil, nil, nil, 866, nil, 14, 868, - nil, nil, nil, 599, nil, nil, nil, 782, nil, 599, - nil, nil, nil, nil, nil, 771, 771, 198, nil, nil, - 278, 278, 771, nil, nil, 793, nil, 278, 879, nil, - nil, 14, nil, 13, nil, nil, 14, 800, 801, nil, - 13, 888, 803, nil, 890, nil, nil, 13, nil, nil, - nil, nil, nil, nil, nil, 893, 771, nil, nil, nil, - nil, 278, nil, 14, nil, nil, nil, nil, nil, nil, - 771, nil, nil, nil, nil, 278, nil, nil, nil, nil, - nil, 771, 709, 710, nil, nil, 278, nil, nil, 773, - 773, nil, nil, nil, nil, 837, nil, nil, 14, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 14, nil, nil, nil, - 773, nil, nil, nil, nil, nil, nil, nil, 14, 14, - nil, nil, nil, 14, nil, nil, nil, nil, nil, 870, - 14, nil, nil, nil, nil, nil, 871, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 274, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 35, nil, 14, nil, 35, nil, - nil, nil, nil, 35, nil, nil, nil, nil, nil, 12, - nil, nil, nil, 12, nil, nil, nil, nil, 12, nil, - nil, 35, 773, 773, nil, nil, nil, nil, nil, 773, - nil, nil, nil, nil, nil, nil, 12, nil, nil, nil, - 14, nil, nil, nil, nil, nil, nil, 14, nil, nil, - nil, nil, nil, nil, 14, nil, nil, nil, nil, nil, - nil, nil, nil, 773, nil, 271, nil, 35, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 773, nil, nil, - nil, nil, 12, nil, nil, nil, nil, nil, 773, nil, - nil, nil, nil, nil, nil, nil, 35, 35, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 12, 12, nil, 35, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 12, - nil, nil, nil, nil, nil, nil, nil, nil, 599, nil, - nil, nil, nil, nil, nil, nil, nil, 35, nil, nil, - nil, nil, 35, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 12, nil, nil, nil, nil, 12, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 35, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 12, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 770, 770, nil, nil, nil, - nil, nil, nil, nil, 35, nil, nil, 206, nil, nil, - nil, 237, 237, 237, nil, nil, nil, nil, nil, 12, - nil, nil, 35, nil, nil, nil, 770, 287, 288, 289, - nil, nil, nil, nil, 35, 35, nil, 12, nil, 35, - nil, nil, 237, 237, nil, nil, 35, nil, nil, 12, - 12, nil, nil, nil, 12, nil, nil, nil, nil, 367, - 371, 12, nil, nil, nil, nil, nil, 271, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 35, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 12, nil, nil, - nil, nil, 429, nil, 430, nil, nil, nil, 770, 770, - nil, nil, nil, nil, nil, 770, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 35, nil, nil, nil, - nil, nil, nil, 35, nil, nil, nil, nil, nil, nil, - 35, 12, nil, nil, nil, nil, nil, nil, 12, 770, - nil, nil, nil, nil, nil, 12, nil, nil, nil, nil, - nil, nil, nil, 770, nil, nil, nil, 366, 237, 374, - 237, nil, nil, 388, 770, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 206, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, nil, nil, nil, nil, nil, nil, nil, - 237, nil, 237, nil, nil, nil, nil, nil, nil, nil, - 539, nil, nil, 237, 237, nil, nil, nil, nil, nil, - nil, nil, 237, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 468, - nil, nil, nil, nil, nil, nil, nil, nil, 480, nil, - nil, nil, nil, nil, nil, nil, nil, 563, nil, 566, - nil, nil, 569, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 582, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 607, nil, nil, nil, nil, 613, nil, nil, - 566, nil, nil, 613, nil, nil, nil, nil, 237, nil, - nil, nil, nil, nil, nil, nil, nil, 367, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 237, nil, 388, 555, 374, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 678, - nil, nil, nil, nil, nil, 237, nil, 237, nil, nil, - 237, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 702, nil, nil, 581, 705, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 237, nil, nil, nil, nil, - nil, 563, 600, 601, 602, 716, nil, 26, nil, nil, - 237, nil, 26, nil, nil, 237, nil, nil, 237, nil, - nil, 237, nil, nil, 26, 26, nil, nil, nil, 26, - 26, 26, nil, nil, nil, 237, 237, 26, nil, nil, - nil, nil, nil, nil, nil, 237, nil, nil, nil, 742, - nil, nil, nil, nil, nil, nil, nil, nil, 26, 26, - 26, nil, nil, 26, 26, nil, nil, 26, nil, nil, - nil, nil, nil, nil, nil, nil, 677, 237, nil, nil, - 682, 684, nil, nil, nil, 687, nil, nil, 689, nil, - nil, nil, nil, nil, nil, 694, nil, nil, nil, 237, - 765, nil, nil, 237, 26, nil, nil, nil, 26, 26, - 26, 26, 26, nil, nil, nil, nil, nil, nil, 237, - nil, nil, nil, 237, nil, 566, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 566, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 731, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 613, nil, nil, nil, nil, nil, 237, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 816, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 26, 26, 26, 26, 26, 26, nil, - nil, 26, 26, 26, nil, nil, nil, 833, nil, 836, - nil, 26, nil, nil, nil, nil, nil, nil, 237, 767, - nil, nil, nil, 841, nil, nil, nil, nil, nil, 682, - 684, 687, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 237, nil, nil, nil, nil, nil, nil, - nil, nil, 237, 563, 237, nil, 566, nil, nil, nil, - nil, 26, 26, nil, nil, nil, nil, nil, nil, nil, - 26, nil, 26, nil, nil, nil, nil, 26, nil, 237, - nil, nil, nil, nil, nil, 878, nil, nil, 881, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 237, nil, - nil, 566, nil, nil, nil, nil, nil, 767, nil, nil, - 892, nil, nil, nil, nil, 26, 26, nil, nil, 828, - nil, nil, nil, nil, nil, 237, nil, 237, nil, nil, - nil, nil, nil, nil, 26, nil, nil, nil, nil, nil, - nil, 237, nil, nil, nil, nil, nil, nil, 26, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 237, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 237, nil, nil, 237, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 26, nil, nil, 237, nil, nil, 237, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 237, - nil, nil, nil, nil, nil, nil, nil, nil, 237, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 26, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 26, nil, nil, nil, 26, nil, nil, - nil, nil, 26, nil, 26, nil, nil, nil, nil, nil, - nil, nil, nil, 26, nil, nil, nil, 26, nil, nil, - 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 26, 26, - nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 26, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 26, nil, nil, - nil, nil, nil, nil, nil, 26, 26, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 26, nil, nil, nil, nil, 26, nil, nil, nil, - nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 26, nil, - nil, nil, nil, nil, nil, nil, nil, 26, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 26, nil, 26, 26, nil, nil, nil, 26, nil, - nil, nil, nil, nil, nil, 26, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 26, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 26, nil, nil, nil, nil, - nil, nil, 26, nil, nil, nil, nil, nil, nil, 26 ] - -racc_goto_check = [ - 14, 15, 56, 56, 56, 14, 39, 53, 45, 45, - 82, 19, 44, 4, 3, 83, 60, 60, 60, 29, - 11, 11, 26, 26, 26, 48, 48, 49, 49, 79, - 14, 76, 76, 126, 56, 32, 54, 54, 54, 31, - 31, 31, 5, 51, 21, 21, 77, 78, 78, 8, - 131, 14, 128, 26, 57, 57, 40, 58, 42, 117, - 58, 14, 117, 28, 28, 28, 45, 82, 54, 33, - 124, 36, 124, 37, 9, 55, 55, 114, 114, 55, - 1, 55, 114, 6, 125, 125, 125, 43, 43, 13, - 13, 33, 33, 13, 10, 18, 12, 14, 16, 24, - 18, 131, 34, 50, 61, 14, 8, 62, 64, 65, - 72, 73, 18, 18, 74, 80, 81, 18, 18, 18, - 84, 85, 86, 87, 88, 18, 18, 18, 89, 90, - 91, 52, 52, 92, 13, 13, 13, 13, 93, 94, - 95, 23, 96, 97, 98, 128, 18, 18, 18, 19, - 99, 18, 18, 100, 102, 18, 18, 18, 18, 104, - 105, 52, 52, 52, 126, 124, 9, 106, 107, 108, - 109, 15, 15, 15, 9, 112, 23, 15, 113, 115, - 23, 23, 116, 118, 23, 119, 14, 14, 120, 5, - 121, 26, 18, 123, 127, 45, 18, 18, 18, 18, - 18, 2, 54, 54, 14, nil, nil, nil, nil, nil, - nil, 79, nil, nil, nil, nil, nil, nil, nil, 33, - nil, nil, nil, 53, 53, 23, 23, 23, 23, nil, - nil, 2, nil, nil, 56, 56, nil, nil, nil, nil, - nil, 42, nil, 56, 117, nil, 125, 125, 60, 60, - 125, nil, nil, nil, 26, 26, nil, 60, nil, nil, - nil, nil, nil, 26, nil, 14, nil, nil, 54, 54, - 14, nil, nil, nil, nil, nil, nil, 54, 51, nil, - nil, 18, 18, 18, 18, 18, 18, nil, nil, 18, - 18, 18, 20, 40, nil, 28, 28, 20, 51, 18, - 78, 77, nil, 59, 28, 57, 36, 57, 37, 125, - nil, 36, nil, 37, nil, nil, nil, 82, 83, 23, - 23, nil, 20, 20, 20, 32, 131, 21, nil, 32, - nil, nil, nil, 82, 58, 58, 126, 131, nil, nil, - nil, 13, 13, 20, nil, 29, nil, nil, nil, 18, - 18, 19, 76, 20, 20, 20, 8, 53, 18, 45, - 18, 53, nil, nil, 18, 18, nil, nil, 53, 52, - 53, 11, nil, nil, nil, 5, 48, nil, 49, nil, - nil, nil, nil, nil, nil, nil, nil, 2, 2, 20, - nil, 31, nil, 26, 45, 31, nil, 20, nil, nil, - nil, nil, nil, 18, 18, 2, 56, nil, nil, nil, - 57, nil, nil, nil, 19, nil, nil, nil, nil, nil, - nil, nil, 18, nil, nil, 56, nil, nil, nil, nil, - nil, nil, 23, 23, nil, nil, 18, nil, nil, 60, - nil, 51, 51, nil, nil, 31, nil, nil, 31, nil, - nil, 23, 76, nil, nil, 19, 26, 131, nil, nil, - 45, nil, nil, nil, 19, 23, 2, nil, nil, 45, - nil, 2, nil, nil, nil, 51, 3, nil, 20, 20, - nil, nil, 51, nil, nil, 54, 14, nil, 18, nil, - 14, nil, 59, nil, nil, 14, 20, 26, 82, 82, - nil, 45, 131, nil, nil, nil, 26, 45, nil, nil, - 54, nil, nil, 14, nil, nil, nil, nil, 82, 82, - 51, 79, nil, 76, 15, 15, nil, nil, nil, 15, - nil, nil, 39, nil, nil, nil, 45, nil, nil, nil, - 18, nil, nil, 13, nil, nil, nil, nil, 11, nil, - nil, 18, nil, 48, nil, 49, 53, 20, 4, 14, - 56, 20, 20, nil, 18, nil, nil, nil, nil, 23, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 26, 18, nil, nil, nil, 18, nil, nil, 14, 14, - 18, nil, 18, 23, nil, nil, 30, 30, 41, nil, - nil, 18, 3, 41, nil, 18, 14, 3, 18, nil, - nil, nil, 44, 17, nil, nil, nil, nil, 17, nil, - nil, nil, nil, 53, 59, nil, nil, 57, 41, 41, - 41, nil, nil, nil, 23, nil, 18, 18, nil, 14, - nil, 18, nil, 17, 14, nil, 59, 82, nil, 41, - nil, nil, 18, 82, 18, 30, 30, 52, nil, 41, - 41, 41, 41, 15, 17, nil, 45, 13, nil, nil, - nil, 14, nil, nil, nil, 18, nil, nil, nil, nil, - nil, nil, nil, 18, 18, nil, nil, 2, nil, nil, - nil, 2, nil, 56, nil, 41, 2, 14, 14, nil, - nil, 18, nil, 41, nil, nil, 14, 60, nil, nil, - 17, 3, nil, 51, nil, nil, nil, nil, 17, nil, - nil, nil, nil, nil, 14, nil, nil, 54, 14, 18, - nil, nil, nil, 51, 18, nil, 14, 14, nil, 18, - nil, 14, nil, nil, 39, nil, nil, nil, 14, nil, - nil, 82, nil, 51, nil, nil, nil, nil, 23, nil, - 2, nil, nil, nil, nil, 59, 18, 13, 59, nil, - nil, nil, nil, nil, nil, 18, nil, nil, 20, 59, - 19, nil, 20, nil, 41, 41, nil, 20, nil, 2, - 2, nil, 18, 18, 14, 30, 30, 52, 52, 17, - 17, 18, 41, nil, nil, 20, nil, 2, nil, nil, - nil, nil, 56, nil, 20, 3, nil, 17, nil, 18, - 14, 14, 26, 18, nil, nil, 45, 14, 52, 18, - nil, 18, 18, nil, nil, nil, 18, nil, 14, nil, - nil, nil, nil, 18, nil, 14, nil, 59, nil, 20, - 59, 20, 14, nil, nil, nil, nil, nil, 23, nil, - nil, 14, 30, 41, 18, nil, nil, 41, 41, 52, - nil, 30, 2, nil, nil, 14, nil, nil, 17, nil, - 20, 20, nil, 17, nil, nil, 14, nil, nil, 18, - nil, 59, nil, nil, nil, nil, 59, nil, 20, 59, - nil, nil, nil, 30, nil, nil, nil, 2, nil, 30, - nil, nil, nil, nil, nil, 18, 18, 18, nil, nil, - 52, 52, 18, nil, nil, 2, nil, 52, 59, nil, - nil, 20, nil, 18, nil, nil, 20, 2, 2, nil, - 18, 59, 2, nil, 59, nil, nil, 18, nil, nil, - nil, nil, nil, nil, nil, 59, 18, nil, nil, nil, - nil, 52, nil, 20, nil, nil, nil, nil, nil, nil, - 18, nil, nil, nil, nil, 52, nil, nil, nil, nil, - nil, 18, 30, 30, nil, nil, 52, nil, nil, 20, - 20, nil, nil, nil, nil, 2, nil, nil, 20, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 20, nil, nil, nil, - 20, nil, nil, nil, nil, nil, nil, nil, 20, 20, - nil, nil, nil, 20, nil, nil, nil, nil, nil, 2, - 20, nil, nil, nil, nil, nil, 2, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 20, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 41, nil, 20, nil, 41, nil, - nil, nil, nil, 41, nil, nil, nil, nil, nil, 17, - nil, nil, nil, 17, nil, nil, nil, nil, 17, nil, - nil, 41, 20, 20, nil, nil, nil, nil, nil, 20, - nil, nil, nil, nil, nil, nil, 17, nil, nil, nil, - 20, nil, nil, nil, nil, nil, nil, 20, nil, nil, - nil, nil, nil, nil, 20, nil, nil, nil, nil, nil, - nil, nil, nil, 20, nil, 41, nil, 41, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 20, nil, nil, - nil, nil, 17, nil, nil, nil, nil, nil, 20, nil, - nil, nil, nil, nil, nil, nil, 41, 41, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 17, 17, nil, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 17, - nil, nil, nil, nil, nil, nil, nil, nil, 30, nil, - nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, - nil, nil, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 17, nil, nil, nil, nil, 17, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 17, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 41, 41, nil, nil, nil, - nil, nil, nil, nil, 41, nil, nil, 25, nil, nil, - nil, 25, 25, 25, nil, nil, nil, nil, nil, 17, - nil, nil, 41, nil, nil, nil, 41, 25, 25, 25, - nil, nil, nil, nil, 41, 41, nil, 17, nil, 41, - nil, nil, 25, 25, nil, nil, 41, nil, nil, 17, - 17, nil, nil, nil, 17, nil, nil, nil, nil, 22, - 22, 17, nil, nil, nil, nil, nil, 41, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 17, nil, nil, - nil, nil, 22, nil, 22, nil, nil, nil, 41, 41, - nil, nil, nil, nil, nil, 41, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 41, nil, nil, nil, - nil, nil, nil, 41, nil, nil, nil, nil, nil, nil, - 41, 17, nil, nil, nil, nil, nil, nil, 17, 41, - nil, nil, nil, nil, nil, 17, nil, nil, nil, nil, - nil, nil, nil, 41, nil, nil, nil, 25, 25, 25, - 25, nil, nil, 25, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 25, 25, 25, 25, - 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 25, nil, nil, nil, nil, nil, nil, nil, - 25, nil, 25, nil, nil, nil, nil, nil, nil, nil, - 22, nil, nil, 25, 25, nil, nil, nil, nil, nil, - nil, nil, 25, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 25, - nil, nil, nil, nil, nil, nil, nil, nil, 25, nil, - nil, nil, nil, nil, nil, nil, nil, 22, nil, 22, - nil, nil, 22, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 22, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 22, nil, nil, nil, nil, 22, nil, nil, - 22, nil, nil, 22, nil, nil, nil, nil, 25, nil, - nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 25, nil, 25, 25, 25, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, - nil, nil, nil, nil, nil, 25, nil, 25, nil, nil, - 25, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 22, nil, nil, 25, 22, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 25, nil, nil, nil, nil, - nil, 22, 25, 25, 25, 22, nil, 35, nil, nil, - 25, nil, 35, nil, nil, 25, nil, nil, 25, nil, - nil, 25, nil, nil, 35, 35, nil, nil, nil, 35, - 35, 35, nil, nil, nil, 25, 25, 35, nil, nil, - nil, nil, nil, nil, nil, 25, nil, nil, nil, 22, - nil, nil, nil, nil, nil, nil, nil, nil, 35, 35, - 35, nil, nil, 35, 35, nil, nil, 35, nil, nil, - nil, nil, nil, nil, nil, nil, 25, 25, nil, nil, - 25, 25, nil, nil, nil, 25, nil, nil, 25, nil, - nil, nil, nil, nil, nil, 25, nil, nil, nil, 25, - 22, nil, nil, 25, 35, nil, nil, nil, 35, 35, - 35, 35, 35, nil, nil, nil, nil, nil, nil, 25, - nil, nil, nil, 25, nil, 22, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 22, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 25, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 22, nil, nil, nil, nil, nil, 25, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 22, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 35, 35, 35, 35, 35, 35, nil, - nil, 35, 35, 35, nil, nil, nil, 22, nil, 22, - nil, 35, nil, nil, nil, nil, nil, nil, 25, 25, - nil, nil, nil, 22, nil, nil, nil, nil, nil, 25, - 25, 25, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 25, nil, nil, nil, nil, nil, nil, - nil, nil, 25, 22, 25, nil, 22, nil, nil, nil, - nil, 35, 35, nil, nil, nil, nil, nil, nil, nil, - 35, nil, 35, nil, nil, nil, nil, 35, nil, 25, - nil, nil, nil, nil, nil, 22, nil, nil, 22, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 25, nil, - nil, 22, nil, nil, nil, nil, nil, 25, nil, nil, - 22, nil, nil, nil, nil, 35, 35, nil, nil, 25, - nil, nil, nil, nil, nil, 25, nil, 25, nil, nil, - nil, nil, nil, nil, 35, nil, nil, nil, nil, nil, - nil, 25, nil, nil, nil, nil, nil, nil, 35, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 25, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 25, nil, nil, 25, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 35, nil, nil, 25, nil, nil, 25, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 25, - nil, nil, nil, nil, nil, nil, nil, nil, 25, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 35, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 35, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 35, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 35, nil, nil, nil, 35, nil, nil, - nil, nil, 35, nil, 35, nil, nil, nil, nil, nil, - nil, nil, nil, 35, nil, nil, nil, 35, nil, nil, - 35, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 35, 35, - nil, nil, nil, 35, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 35, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 35, nil, nil, - nil, nil, nil, nil, nil, 35, 35, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 35, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 35, nil, nil, nil, nil, 35, nil, nil, nil, - nil, 35, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 35, nil, - nil, nil, nil, nil, nil, nil, nil, 35, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 35, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 35, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 35, nil, 35, 35, nil, nil, nil, 35, nil, - nil, nil, nil, nil, nil, 35, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 35, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 35, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 35, nil, nil, nil, nil, - nil, nil, 35, nil, nil, nil, nil, nil, nil, 35 ] - -racc_goto_pointer = [ - nil, 80, 201, -37, -279, -428, -521, nil, 46, 69, - 91, 14, 89, 33, 0, -17, 37, 613, 95, -42, - 292, -144, 1171, 124, -8, 1289, 0, nil, 41, -235, - 404, 13, -218, -355, -334, 1757, 41, 43, nil, -25, - 24, 598, -264, 25, -52, 2, nil, nil, 19, 21, - -258, 2, 100, -247, 14, -222, -20, 28, -375, 63, - -6, -341, -148, nil, -337, -478, nil, nil, nil, nil, - nil, nil, 46, 57, 59, nil, -275, -569, -444, -282, - 54, -210, 7, -499, 56, -218, -172, 65, -494, 69, - -493, -371, -671, -370, -503, -189, -196, -372, -618, -407, - -404, nil, -80, nil, -99, -99, -329, -635, -302, -438, - nil, nil, 105, 106, 3, 103, -164, -284, 106, -337, - -335, -455, nil, -560, -683, -563, -481, -559, -703, nil, - nil, -378 ] - -racc_goto_default = [ - nil, nil, 292, nil, nil, 733, nil, 3, nil, 4, - 312, nil, nil, nil, 202, 16, 11, 203, 286, nil, - 201, nil, 244, 15, nil, 19, 20, 21, nil, 25, - 596, nil, nil, nil, nil, 277, 29, nil, 31, 34, - 33, 199, 323, nil, 114, 380, 113, 116, 68, 69, - nil, nil, 42, 295, 297, nil, 298, 544, 545, 425, - 562, nil, nil, 255, nil, nil, 43, 44, 45, 46, - 47, 48, 49, nil, 256, 55, nil, nil, nil, nil, - nil, nil, 487, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 235, nil, 384, nil, nil, nil, nil, nil, nil, - 67, 70, 71, nil, nil, nil, nil, 525, nil, nil, - nil, 646, 647, 648, 649, nil, 812, 656, 657, 660, - 663, 248 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 133, :_reduce_1, - 4, 135, :_reduce_2, - 2, 134, :_reduce_3, - 0, 139, :_reduce_4, - 1, 139, :_reduce_5, - 2, 139, :_reduce_6, - 3, 139, :_reduce_7, - 0, 156, :_reduce_8, - 4, 141, :_reduce_9, - 3, 141, :_reduce_10, - 3, 141, :_reduce_11, - 3, 141, :_reduce_12, - 2, 141, :_reduce_13, - 3, 141, :_reduce_14, - 3, 141, :_reduce_15, - 3, 141, :_reduce_16, - 3, 141, :_reduce_17, - 3, 141, :_reduce_18, - 4, 141, :_reduce_19, - 4, 141, :_reduce_20, - 3, 141, :_reduce_21, - 3, 141, :_reduce_22, - 3, 141, :_reduce_23, - 6, 141, :_reduce_24, - 5, 141, :_reduce_25, - 5, 141, :_reduce_26, - 5, 141, :_reduce_27, - 3, 141, :_reduce_28, - 3, 141, :_reduce_29, - 3, 141, :_reduce_30, - 3, 141, :_reduce_31, - 1, 141, :_reduce_none, - 1, 155, :_reduce_none, - 3, 155, :_reduce_34, - 3, 155, :_reduce_35, - 2, 155, :_reduce_36, - 2, 155, :_reduce_37, - 1, 155, :_reduce_none, - 1, 145, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 2, 147, :_reduce_42, - 2, 147, :_reduce_43, - 2, 147, :_reduce_44, - 1, 159, :_reduce_none, - 4, 159, :_reduce_46, - 4, 159, :_reduce_47, - 0, 166, :_reduce_48, - 5, 164, :_reduce_49, - 2, 158, :_reduce_50, - 3, 158, :_reduce_51, - 4, 158, :_reduce_52, - 5, 158, :_reduce_53, - 4, 158, :_reduce_54, - 5, 158, :_reduce_55, - 2, 158, :_reduce_56, - 2, 158, :_reduce_57, - 1, 148, :_reduce_58, - 3, 148, :_reduce_59, - 1, 169, :_reduce_60, - 3, 169, :_reduce_61, - 1, 168, :_reduce_62, - 2, 168, :_reduce_63, - 3, 168, :_reduce_64, - 2, 168, :_reduce_65, - 2, 168, :_reduce_66, - 1, 168, :_reduce_67, - 1, 171, :_reduce_none, - 3, 171, :_reduce_69, - 2, 170, :_reduce_70, - 3, 170, :_reduce_71, - 1, 172, :_reduce_72, - 4, 172, :_reduce_73, - 3, 172, :_reduce_74, - 3, 172, :_reduce_75, - 3, 172, :_reduce_76, - 3, 172, :_reduce_77, - 2, 172, :_reduce_78, - 1, 172, :_reduce_79, - 1, 146, :_reduce_80, - 4, 146, :_reduce_81, - 3, 146, :_reduce_82, - 3, 146, :_reduce_83, - 3, 146, :_reduce_84, - 3, 146, :_reduce_85, - 2, 146, :_reduce_86, - 1, 146, :_reduce_87, - 1, 174, :_reduce_88, - 1, 174, :_reduce_none, - 2, 175, :_reduce_90, - 1, 175, :_reduce_91, - 3, 175, :_reduce_92, - 1, 176, :_reduce_none, - 1, 176, :_reduce_none, - 1, 176, :_reduce_none, - 1, 176, :_reduce_none, - 1, 176, :_reduce_none, - 1, 179, :_reduce_98, - 1, 179, :_reduce_none, - 1, 143, :_reduce_none, - 1, 143, :_reduce_none, - 1, 144, :_reduce_102, - 0, 182, :_reduce_103, - 4, 144, :_reduce_104, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 177, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 1, 178, :_reduce_none, - 3, 157, :_reduce_171, - 5, 157, :_reduce_172, - 3, 157, :_reduce_173, - 6, 157, :_reduce_174, - 5, 157, :_reduce_175, - 5, 157, :_reduce_176, - 5, 157, :_reduce_177, - 5, 157, :_reduce_178, - 4, 157, :_reduce_179, - 3, 157, :_reduce_180, - 3, 157, :_reduce_181, - 3, 157, :_reduce_182, - 3, 157, :_reduce_183, - 3, 157, :_reduce_184, - 3, 157, :_reduce_185, - 3, 157, :_reduce_186, - 3, 157, :_reduce_187, - 3, 157, :_reduce_188, - 4, 157, :_reduce_189, - 4, 157, :_reduce_190, - 2, 157, :_reduce_191, - 2, 157, :_reduce_192, - 3, 157, :_reduce_193, - 3, 157, :_reduce_194, - 3, 157, :_reduce_195, - 3, 157, :_reduce_196, - 3, 157, :_reduce_197, - 3, 157, :_reduce_198, - 3, 157, :_reduce_199, - 3, 157, :_reduce_200, - 3, 157, :_reduce_201, - 3, 157, :_reduce_202, - 3, 157, :_reduce_203, - 3, 157, :_reduce_204, - 3, 157, :_reduce_205, - 2, 157, :_reduce_206, - 2, 157, :_reduce_207, - 3, 157, :_reduce_208, - 3, 157, :_reduce_209, - 3, 157, :_reduce_210, - 3, 157, :_reduce_211, - 3, 157, :_reduce_212, - 5, 157, :_reduce_213, - 1, 157, :_reduce_none, - 1, 154, :_reduce_none, - 1, 151, :_reduce_none, - 2, 151, :_reduce_217, - 2, 151, :_reduce_218, - 5, 151, :_reduce_219, - 2, 151, :_reduce_220, - 3, 151, :_reduce_221, - 3, 189, :_reduce_222, - 4, 189, :_reduce_223, - 4, 189, :_reduce_224, - 6, 189, :_reduce_225, - 0, 190, :_reduce_226, - 1, 190, :_reduce_none, - 1, 160, :_reduce_228, - 2, 160, :_reduce_229, - 5, 160, :_reduce_230, - 2, 160, :_reduce_231, - 5, 160, :_reduce_232, - 4, 160, :_reduce_233, - 7, 160, :_reduce_234, - 3, 160, :_reduce_235, - 1, 160, :_reduce_236, - 4, 193, :_reduce_237, - 3, 193, :_reduce_238, - 5, 193, :_reduce_239, - 7, 193, :_reduce_240, - 2, 193, :_reduce_241, - 5, 193, :_reduce_242, - 4, 193, :_reduce_243, - 6, 193, :_reduce_244, - 7, 193, :_reduce_245, - 9, 193, :_reduce_246, - 3, 193, :_reduce_247, - 1, 193, :_reduce_248, - 0, 195, :_reduce_249, - 2, 163, :_reduce_250, - 1, 194, :_reduce_251, - 0, 196, :_reduce_252, - 3, 194, :_reduce_253, - 0, 197, :_reduce_254, - 4, 194, :_reduce_255, - 2, 192, :_reduce_256, - 2, 191, :_reduce_257, - 0, 191, :_reduce_258, - 1, 186, :_reduce_259, - 3, 186, :_reduce_260, - 3, 153, :_reduce_261, - 4, 153, :_reduce_262, - 2, 153, :_reduce_263, - 1, 184, :_reduce_none, - 1, 184, :_reduce_none, - 1, 184, :_reduce_none, - 1, 184, :_reduce_none, - 1, 184, :_reduce_none, - 1, 184, :_reduce_none, - 1, 184, :_reduce_none, - 1, 184, :_reduce_none, - 1, 184, :_reduce_272, - 3, 184, :_reduce_273, - 0, 218, :_reduce_274, - 5, 184, :_reduce_275, - 3, 184, :_reduce_276, - 3, 184, :_reduce_277, - 2, 184, :_reduce_278, - 4, 184, :_reduce_279, - 3, 184, :_reduce_280, - 3, 184, :_reduce_281, - 1, 184, :_reduce_282, - 4, 184, :_reduce_283, - 3, 184, :_reduce_284, - 1, 184, :_reduce_285, - 5, 184, :_reduce_286, - 2, 184, :_reduce_287, - 1, 184, :_reduce_none, - 2, 184, :_reduce_289, - 6, 184, :_reduce_290, - 6, 184, :_reduce_291, - 0, 219, :_reduce_292, - 0, 220, :_reduce_293, - 7, 184, :_reduce_294, - 0, 221, :_reduce_295, - 0, 222, :_reduce_296, - 7, 184, :_reduce_297, - 5, 184, :_reduce_298, - 4, 184, :_reduce_299, - 5, 184, :_reduce_300, - 0, 223, :_reduce_301, - 0, 224, :_reduce_302, - 9, 184, :_reduce_303, - 0, 225, :_reduce_304, - 6, 184, :_reduce_305, - 0, 226, :_reduce_306, - 7, 184, :_reduce_307, - 0, 227, :_reduce_308, - 5, 184, :_reduce_309, - 0, 228, :_reduce_310, - 6, 184, :_reduce_311, - 0, 229, :_reduce_312, - 0, 230, :_reduce_313, - 9, 184, :_reduce_314, - 1, 184, :_reduce_315, - 1, 184, :_reduce_316, - 1, 184, :_reduce_317, - 1, 184, :_reduce_318, - 1, 150, :_reduce_none, - 1, 208, :_reduce_none, - 1, 208, :_reduce_none, - 1, 208, :_reduce_none, - 2, 208, :_reduce_323, - 1, 210, :_reduce_none, - 1, 210, :_reduce_none, - 1, 210, :_reduce_none, - 1, 209, :_reduce_none, - 5, 209, :_reduce_328, - 1, 137, :_reduce_none, - 2, 137, :_reduce_330, - 1, 212, :_reduce_none, - 1, 212, :_reduce_none, - 1, 231, :_reduce_333, - 3, 231, :_reduce_334, - 1, 232, :_reduce_none, - 2, 232, :_reduce_none, - 4, 232, :_reduce_337, - 7, 232, :_reduce_338, - 6, 232, :_reduce_339, - 4, 232, :_reduce_340, - 3, 232, :_reduce_341, - 5, 232, :_reduce_342, - 4, 232, :_reduce_343, - 2, 232, :_reduce_344, - 1, 232, :_reduce_345, - 2, 232, :_reduce_346, - 0, 165, :_reduce_347, - 2, 165, :_reduce_348, - 1, 165, :_reduce_349, - 3, 165, :_reduce_350, - 0, 234, :_reduce_351, - 5, 233, :_reduce_352, - 2, 161, :_reduce_353, - 4, 161, :_reduce_354, - 4, 161, :_reduce_355, - 2, 207, :_reduce_356, - 4, 207, :_reduce_357, - 4, 207, :_reduce_358, - 3, 207, :_reduce_359, - 2, 207, :_reduce_360, - 1, 207, :_reduce_361, - 0, 236, :_reduce_362, - 5, 206, :_reduce_363, - 0, 237, :_reduce_364, - 5, 206, :_reduce_365, - 5, 211, :_reduce_366, - 1, 238, :_reduce_none, - 4, 238, :_reduce_368, - 2, 238, :_reduce_369, - 1, 239, :_reduce_370, - 1, 239, :_reduce_none, - 6, 136, :_reduce_372, - 0, 136, :_reduce_373, - 1, 240, :_reduce_374, - 1, 240, :_reduce_none, - 1, 240, :_reduce_none, - 2, 241, :_reduce_377, - 1, 241, :_reduce_none, - 2, 138, :_reduce_379, - 1, 138, :_reduce_none, - 1, 198, :_reduce_none, - 1, 198, :_reduce_none, - 1, 198, :_reduce_none, - 1, 199, :_reduce_384, - 1, 243, :_reduce_385, - 2, 243, :_reduce_386, - 3, 244, :_reduce_387, - 1, 244, :_reduce_388, - 3, 200, :_reduce_389, - 4, 201, :_reduce_390, - 3, 202, :_reduce_391, - 0, 247, :_reduce_392, - 3, 247, :_reduce_393, - 1, 248, :_reduce_394, - 2, 248, :_reduce_395, - 3, 203, :_reduce_396, - 0, 250, :_reduce_397, - 3, 250, :_reduce_398, - 0, 245, :_reduce_399, - 2, 245, :_reduce_400, - 0, 246, :_reduce_401, - 2, 246, :_reduce_402, - 1, 249, :_reduce_403, - 2, 249, :_reduce_404, - 0, 252, :_reduce_405, - 4, 249, :_reduce_406, - 1, 251, :_reduce_407, - 1, 251, :_reduce_408, - 1, 251, :_reduce_409, - 1, 251, :_reduce_none, - 1, 180, :_reduce_411, - 3, 181, :_reduce_412, - 1, 242, :_reduce_413, - 1, 242, :_reduce_414, - 2, 242, :_reduce_415, - 2, 242, :_reduce_416, - 1, 173, :_reduce_417, - 1, 173, :_reduce_418, - 1, 173, :_reduce_419, - 1, 173, :_reduce_420, - 1, 173, :_reduce_421, - 1, 173, :_reduce_422, - 1, 173, :_reduce_423, - 1, 173, :_reduce_424, - 1, 173, :_reduce_425, - 1, 173, :_reduce_426, - 1, 173, :_reduce_427, - 1, 204, :_reduce_428, - 1, 149, :_reduce_429, - 1, 152, :_reduce_430, - 1, 152, :_reduce_431, - 1, 213, :_reduce_432, - 3, 213, :_reduce_433, - 2, 213, :_reduce_434, - 4, 215, :_reduce_435, - 2, 215, :_reduce_436, - 6, 253, :_reduce_437, - 4, 253, :_reduce_438, - 4, 253, :_reduce_439, - 2, 253, :_reduce_440, - 4, 253, :_reduce_441, - 2, 253, :_reduce_442, - 2, 253, :_reduce_443, - 1, 253, :_reduce_444, - 0, 253, :_reduce_445, - 1, 259, :_reduce_446, - 1, 259, :_reduce_447, - 1, 259, :_reduce_448, - 1, 259, :_reduce_449, - 1, 259, :_reduce_450, - 1, 254, :_reduce_451, - 3, 254, :_reduce_452, - 3, 260, :_reduce_453, - 1, 255, :_reduce_454, - 3, 255, :_reduce_455, - 1, 261, :_reduce_none, - 1, 261, :_reduce_none, - 2, 256, :_reduce_458, - 1, 256, :_reduce_459, - 1, 262, :_reduce_none, - 1, 262, :_reduce_none, - 2, 258, :_reduce_462, - 2, 257, :_reduce_463, - 0, 257, :_reduce_464, - 1, 216, :_reduce_none, - 4, 216, :_reduce_466, - 0, 205, :_reduce_467, - 2, 205, :_reduce_468, - 2, 205, :_reduce_469, - 1, 188, :_reduce_470, - 3, 188, :_reduce_471, - 3, 263, :_reduce_472, - 1, 167, :_reduce_none, - 1, 167, :_reduce_none, - 1, 167, :_reduce_none, - 1, 162, :_reduce_none, - 1, 162, :_reduce_none, - 1, 162, :_reduce_none, - 1, 162, :_reduce_none, - 1, 235, :_reduce_none, - 1, 235, :_reduce_none, - 1, 235, :_reduce_none, - 1, 217, :_reduce_none, - 1, 217, :_reduce_none, - 0, 140, :_reduce_none, - 1, 140, :_reduce_none, - 0, 183, :_reduce_none, - 1, 183, :_reduce_none, - 0, 187, :_reduce_none, - 1, 187, :_reduce_none, - 1, 187, :_reduce_none, - 1, 214, :_reduce_492, - 1, 214, :_reduce_none, - 1, 142, :_reduce_none, - 2, 142, :_reduce_none, - 0, 185, :_reduce_496 ] - -racc_reduce_n = 497 - -racc_shift_n = 894 - -racc_token_table = { - false => 0, - :error => 1, - :kCLASS => 2, - :kMODULE => 3, - :kDEF => 4, - :kUNDEF => 5, - :kBEGIN => 6, - :kRESCUE => 7, - :kENSURE => 8, - :kEND => 9, - :kIF => 10, - :kUNLESS => 11, - :kTHEN => 12, - :kELSIF => 13, - :kELSE => 14, - :kCASE => 15, - :kWHEN => 16, - :kWHILE => 17, - :kUNTIL => 18, - :kFOR => 19, - :kBREAK => 20, - :kNEXT => 21, - :kREDO => 22, - :kRETRY => 23, - :kIN => 24, - :kDO => 25, - :kDO_COND => 26, - :kDO_BLOCK => 27, - :kRETURN => 28, - :kYIELD => 29, - :kSUPER => 30, - :kSELF => 31, - :kNIL => 32, - :kTRUE => 33, - :kFALSE => 34, - :kAND => 35, - :kOR => 36, - :kNOT => 37, - :kIF_MOD => 38, - :kUNLESS_MOD => 39, - :kWHILE_MOD => 40, - :kUNTIL_MOD => 41, - :kRESCUE_MOD => 42, - :kALIAS => 43, - :kDEFINED => 44, - :klBEGIN => 45, - :klEND => 46, - :k__LINE__ => 47, - :k__FILE__ => 48, - :tIDENTIFIER => 49, - :tFID => 50, - :tGVAR => 51, - :tIVAR => 52, - :tCONSTANT => 53, - :tCVAR => 54, - :tNTH_REF => 55, - :tBACK_REF => 56, - :tSTRING_CONTENT => 57, - :tINTEGER => 58, - :tFLOAT => 59, - :tREGEXP_END => 60, - :tUPLUS => 61, - :tUMINUS => 62, - :tUMINUS_NUM => 63, - :tPOW => 64, - :tCMP => 65, - :tEQ => 66, - :tEQQ => 67, - :tNEQ => 68, - :tGEQ => 69, - :tLEQ => 70, - :tANDOP => 71, - :tOROP => 72, - :tMATCH => 73, - :tNMATCH => 74, - :tDOT => 75, - :tDOT2 => 76, - :tDOT3 => 77, - :tAREF => 78, - :tASET => 79, - :tLSHFT => 80, - :tRSHFT => 81, - :tCOLON2 => 82, - :tCOLON3 => 83, - :tOP_ASGN => 84, - :tASSOC => 85, - :tLPAREN => 86, - :tLPAREN2 => 87, - :tRPAREN => 88, - :tLPAREN_ARG => 89, - :tLBRACK => 90, - :tLBRACK2 => 91, - :tRBRACK => 92, - :tLBRACE => 93, - :tLBRACE_ARG => 94, - :tSTAR => 95, - :tSTAR2 => 96, - :tAMPER => 97, - :tAMPER2 => 98, - :tTILDE => 99, - :tPERCENT => 100, - :tDIVIDE => 101, - :tPLUS => 102, - :tMINUS => 103, - :tLT => 104, - :tGT => 105, - :tPIPE => 106, - :tBANG => 107, - :tCARET => 108, - :tLCURLY => 109, - :tRCURLY => 110, - :tBACK_REF2 => 111, - :tSYMBEG => 112, - :tSTRING_BEG => 113, - :tXSTRING_BEG => 114, - :tREGEXP_BEG => 115, - :tWORDS_BEG => 116, - :tQWORDS_BEG => 117, - :tSTRING_DBEG => 118, - :tSTRING_DVAR => 119, - :tSTRING_END => 120, - :tSTRING => 121, - :tSYMBOL => 122, - :tREGEXP_OPT => 123, - :tNL => 124, - :tEH => 125, - :tCOLON => 126, - :tCOMMA => 127, - :tSPACE => 128, - :tSEMI => 129, - :tEQL => 130, - :tLOWEST => 131 } - -racc_nt_base = 132 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "kCLASS", - "kMODULE", - "kDEF", - "kUNDEF", - "kBEGIN", - "kRESCUE", - "kENSURE", - "kEND", - "kIF", - "kUNLESS", - "kTHEN", - "kELSIF", - "kELSE", - "kCASE", - "kWHEN", - "kWHILE", - "kUNTIL", - "kFOR", - "kBREAK", - "kNEXT", - "kREDO", - "kRETRY", - "kIN", - "kDO", - "kDO_COND", - "kDO_BLOCK", - "kRETURN", - "kYIELD", - "kSUPER", - "kSELF", - "kNIL", - "kTRUE", - "kFALSE", - "kAND", - "kOR", - "kNOT", - "kIF_MOD", - "kUNLESS_MOD", - "kWHILE_MOD", - "kUNTIL_MOD", - "kRESCUE_MOD", - "kALIAS", - "kDEFINED", - "klBEGIN", - "klEND", - "k__LINE__", - "k__FILE__", - "tIDENTIFIER", - "tFID", - "tGVAR", - "tIVAR", - "tCONSTANT", - "tCVAR", - "tNTH_REF", - "tBACK_REF", - "tSTRING_CONTENT", - "tINTEGER", - "tFLOAT", - "tREGEXP_END", - "tUPLUS", - "tUMINUS", - "tUMINUS_NUM", - "tPOW", - "tCMP", - "tEQ", - "tEQQ", - "tNEQ", - "tGEQ", - "tLEQ", - "tANDOP", - "tOROP", - "tMATCH", - "tNMATCH", - "tDOT", - "tDOT2", - "tDOT3", - "tAREF", - "tASET", - "tLSHFT", - "tRSHFT", - "tCOLON2", - "tCOLON3", - "tOP_ASGN", - "tASSOC", - "tLPAREN", - "tLPAREN2", - "tRPAREN", - "tLPAREN_ARG", - "tLBRACK", - "tLBRACK2", - "tRBRACK", - "tLBRACE", - "tLBRACE_ARG", - "tSTAR", - "tSTAR2", - "tAMPER", - "tAMPER2", - "tTILDE", - "tPERCENT", - "tDIVIDE", - "tPLUS", - "tMINUS", - "tLT", - "tGT", - "tPIPE", - "tBANG", - "tCARET", - "tLCURLY", - "tRCURLY", - "tBACK_REF2", - "tSYMBEG", - "tSTRING_BEG", - "tXSTRING_BEG", - "tREGEXP_BEG", - "tWORDS_BEG", - "tQWORDS_BEG", - "tSTRING_DBEG", - "tSTRING_DVAR", - "tSTRING_END", - "tSTRING", - "tSYMBOL", - "tREGEXP_OPT", - "tNL", - "tEH", - "tCOLON", - "tCOMMA", - "tSPACE", - "tSEMI", - "tEQL", - "tLOWEST", - "$start", - "program", - "compstmt", - "bodystmt", - "opt_rescue", - "opt_else", - "opt_ensure", - "stmts", - "opt_terms", - "stmt", - "terms", - "fitem", - "undef_list", - "expr_value", - "lhs", - "command_call", - "mlhs", - "var_lhs", - "primary_value", - "aref_args", - "backref", - "mrhs", - "arg_value", - "expr", - "@1", - "arg", - "command", - "block_command", - "call_args", - "block_call", - "operation2", - "command_args", - "cmd_brace_block", - "opt_block_var", - "@2", - "operation", - "mlhs_basic", - "mlhs_entry", - "mlhs_head", - "mlhs_item", - "mlhs_node", - "variable", - "cname", - "cpath", - "fname", - "op", - "reswords", - "fsym", - "symbol", - "dsym", - "@3", - "opt_nl", - "primary", - "none", - "args", - "trailer", - "assocs", - "paren_args", - "opt_paren_args", - "opt_block_arg", - "block_arg", - "call_args2", - "open_args", - "@4", - "@5", - "@6", - "literal", - "strings", - "xstring", - "regexp", - "words", - "qwords", - "var_ref", - "assoc_list", - "brace_block", - "method_call", - "then", - "if_tail", - "do", - "case_body", - "for_var", - "superclass", - "term", - "f_arglist", - "singleton", - "dot_or_colon", - "@7", - "@8", - "@9", - "@10", - "@11", - "@12", - "@13", - "@14", - "@15", - "@16", - "@17", - "@18", - "@19", - "block_par", - "block_var", - "do_block", - "@20", - "operation3", - "@21", - "@22", - "when_args", - "cases", - "exc_list", - "exc_var", - "numeric", - "string", - "string1", - "string_contents", - "xstring_contents", - "word_list", - "word", - "string_content", - "qword_list", - "string_dvar", - "@23", - "f_args", - "f_arg", - "f_optarg", - "f_rest_arg", - "opt_f_block_arg", - "f_block_arg", - "f_norm_arg", - "f_opt", - "restarg_mark", - "blkarg_mark", - "assoc" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'ruby18.y', 73) - def _reduce_1(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 78) - def _reduce_2(val, _values, result) - rescue_bodies = val[1] - else_t, else_ = val[2] - ensure_t, ensure_ = val[3] - - if rescue_bodies.empty? && !else_.nil? - diagnostic :warning, :useless_else, nil, else_t - end - - result = @builder.begin_body(val[0], - rescue_bodies, - else_t, else_, - ensure_t, ensure_) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 94) - def _reduce_3(val, _values, result) - result = @builder.compstmt(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 99) - def _reduce_4(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 103) - def _reduce_5(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 107) - def _reduce_6(val, _values, result) - result = [ val[1] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 111) - def _reduce_7(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 116) - def _reduce_8(val, _values, result) - @lexer.state = :expr_fname - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 120) - def _reduce_9(val, _values, result) - result = @builder.alias(val[0], val[1], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 124) - def _reduce_10(val, _values, result) - result = @builder.alias(val[0], - @builder.gvar(val[1]), - @builder.gvar(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 130) - def _reduce_11(val, _values, result) - result = @builder.alias(val[0], - @builder.gvar(val[1]), - @builder.back_ref(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 136) - def _reduce_12(val, _values, result) - diagnostic :error, :nth_ref_alias, nil, val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 140) - def _reduce_13(val, _values, result) - result = @builder.undef_method(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 144) - def _reduce_14(val, _values, result) - result = @builder.condition_mod(val[0], nil, - val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 149) - def _reduce_15(val, _values, result) - result = @builder.condition_mod(nil, val[0], - val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 154) - def _reduce_16(val, _values, result) - result = @builder.loop_mod(:while, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 158) - def _reduce_17(val, _values, result) - result = @builder.loop_mod(:until, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 162) - def _reduce_18(val, _values, result) - rescue_body = @builder.rescue_body(val[1], - nil, nil, nil, - nil, val[2]) - - result = @builder.begin_body(val[0], [ rescue_body ]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 170) - def _reduce_19(val, _values, result) - if in_def? - diagnostic :error, :begin_in_method, nil, val[0] - end - - result = @builder.preexe(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 178) - def _reduce_20(val, _values, result) - result = @builder.postexe(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 182) - def _reduce_21(val, _values, result) - result = @builder.assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 186) - def _reduce_22(val, _values, result) - result = @builder.multi_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 190) - def _reduce_23(val, _values, result) - result = @builder.op_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 194) - def _reduce_24(val, _values, result) - result = @builder.op_assign( - @builder.index( - val[0], val[1], val[2], val[3]), - val[4], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 201) - def _reduce_25(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 208) - def _reduce_26(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 215) - def _reduce_27(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 222) - def _reduce_28(val, _values, result) - @builder.op_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 226) - def _reduce_29(val, _values, result) - result = @builder.assign(val[0], val[1], - @builder.array(nil, val[2], nil)) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 231) - def _reduce_30(val, _values, result) - result = @builder.multi_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 235) - def _reduce_31(val, _values, result) - result = @builder.multi_assign(val[0], val[1], - @builder.array(nil, val[2], nil)) - - result - end -.,., - -# reduce 32 omitted - -# reduce 33 omitted - -module_eval(<<'.,.,', 'ruby18.y', 243) - def _reduce_34(val, _values, result) - result = @builder.logical_op(:and, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 247) - def _reduce_35(val, _values, result) - result = @builder.logical_op(:or, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 251) - def _reduce_36(val, _values, result) - result = @builder.not_op(val[0], nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 255) - def _reduce_37(val, _values, result) - result = @builder.not_op(val[0], nil, val[1], nil) - - result - end -.,., - -# reduce 38 omitted - -# reduce 39 omitted - -# reduce 40 omitted - -# reduce 41 omitted - -module_eval(<<'.,.,', 'ruby18.y', 265) - def _reduce_42(val, _values, result) - result = @builder.keyword_cmd(:return, val[0], - nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 270) - def _reduce_43(val, _values, result) - result = @builder.keyword_cmd(:break, val[0], - nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 275) - def _reduce_44(val, _values, result) - result = @builder.keyword_cmd(:next, val[0], - nil, val[1], nil) - - result - end -.,., - -# reduce 45 omitted - -module_eval(<<'.,.,', 'ruby18.y', 282) - def _reduce_46(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 288) - def _reduce_47(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 295) - def _reduce_48(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 299) - def _reduce_49(val, _values, result) - result = [ val[0], val[2], val[3], val[4] ] - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 306) - def _reduce_50(val, _values, result) - lparen_t, args, rparen_t = val[1] - result = @builder.call_method(nil, nil, val[0], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 312) - def _reduce_51(val, _values, result) - lparen_t, args, rparen_t = val[1] - method_call = @builder.call_method(nil, nil, val[0], - lparen_t, args, rparen_t) - - begin_t, block_args, body, end_t = val[2] - result = @builder.block(method_call, - begin_t, block_args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 322) - def _reduce_52(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 329) - def _reduce_53(val, _values, result) - lparen_t, args, rparen_t = val[3] - method_call = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - begin_t, block_args, body, end_t = val[4] - result = @builder.block(method_call, - begin_t, block_args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 339) - def _reduce_54(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 345) - def _reduce_55(val, _values, result) - lparen_t, args, rparen_t = val[3] - method_call = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - begin_t, block_args, body, end_t = val[4] - result = @builder.block(method_call, - begin_t, block_args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 355) - def _reduce_56(val, _values, result) - lparen_t, args, rparen_t = val[1] - result = @builder.keyword_cmd(:super, val[0], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 361) - def _reduce_57(val, _values, result) - lparen_t, args, rparen_t = val[1] - result = @builder.keyword_cmd(:yield, val[0], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 368) - def _reduce_58(val, _values, result) - result = @builder.multi_lhs(nil, val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 372) - def _reduce_59(val, _values, result) - result = @builder.begin(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 377) - def _reduce_60(val, _values, result) - result = @builder.multi_lhs(nil, val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 381) - def _reduce_61(val, _values, result) - result = @builder.multi_lhs(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 386) - def _reduce_62(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 390) - def _reduce_63(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 394) - def _reduce_64(val, _values, result) - result = val[0] << @builder.splat(val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 398) - def _reduce_65(val, _values, result) - result = val[0] << @builder.splat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 402) - def _reduce_66(val, _values, result) - result = [ @builder.splat(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 406) - def _reduce_67(val, _values, result) - result = [ @builder.splat(val[0]) ] - - result - end -.,., - -# reduce 68 omitted - -module_eval(<<'.,.,', 'ruby18.y', 412) - def _reduce_69(val, _values, result) - result = @builder.begin(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 417) - def _reduce_70(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 421) - def _reduce_71(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 426) - def _reduce_72(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 430) - def _reduce_73(val, _values, result) - result = @builder.index_asgn(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 434) - def _reduce_74(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 438) - def _reduce_75(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 442) - def _reduce_76(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 446) - def _reduce_77(val, _values, result) - result = @builder.assignable( - @builder.const_fetch(val[0], val[1], val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 451) - def _reduce_78(val, _values, result) - result = @builder.assignable( - @builder.const_global(val[0], val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 456) - def _reduce_79(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 461) - def _reduce_80(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 465) - def _reduce_81(val, _values, result) - result = @builder.index_asgn(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 469) - def _reduce_82(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 473) - def _reduce_83(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 477) - def _reduce_84(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 481) - def _reduce_85(val, _values, result) - result = @builder.assignable( - @builder.const_fetch(val[0], val[1], val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 486) - def _reduce_86(val, _values, result) - result = @builder.assignable( - @builder.const_global(val[0], val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 491) - def _reduce_87(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 496) - def _reduce_88(val, _values, result) - diagnostic :error, :module_name_const, nil, val[0] - - result - end -.,., - -# reduce 89 omitted - -module_eval(<<'.,.,', 'ruby18.y', 502) - def _reduce_90(val, _values, result) - result = @builder.const_global(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 506) - def _reduce_91(val, _values, result) - result = @builder.const(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 510) - def _reduce_92(val, _values, result) - result = @builder.const_fetch(val[0], val[1], val[2]) - - result - end -.,., - -# reduce 93 omitted - -# reduce 94 omitted - -# reduce 95 omitted - -# reduce 96 omitted - -# reduce 97 omitted - -module_eval(<<'.,.,', 'ruby18.y', 519) - def _reduce_98(val, _values, result) - result = @builder.symbol(val[0]) - - result - end -.,., - -# reduce 99 omitted - -# reduce 100 omitted - -# reduce 101 omitted - -module_eval(<<'.,.,', 'ruby18.y', 528) - def _reduce_102(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 532) - def _reduce_103(val, _values, result) - @lexer.state = :expr_fname - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 536) - def _reduce_104(val, _values, result) - result = val[0] << val[3] - - result - end -.,., - -# reduce 105 omitted - -# reduce 106 omitted - -# reduce 107 omitted - -# reduce 108 omitted - -# reduce 109 omitted - -# reduce 110 omitted - -# reduce 111 omitted - -# reduce 112 omitted - -# reduce 113 omitted - -# reduce 114 omitted - -# reduce 115 omitted - -# reduce 116 omitted - -# reduce 117 omitted - -# reduce 118 omitted - -# reduce 119 omitted - -# reduce 120 omitted - -# reduce 121 omitted - -# reduce 122 omitted - -# reduce 123 omitted - -# reduce 124 omitted - -# reduce 125 omitted - -# reduce 126 omitted - -# reduce 127 omitted - -# reduce 128 omitted - -# reduce 129 omitted - -# reduce 130 omitted - -# reduce 131 omitted - -# reduce 132 omitted - -# reduce 133 omitted - -# reduce 134 omitted - -# reduce 135 omitted - -# reduce 136 omitted - -# reduce 137 omitted - -# reduce 138 omitted - -# reduce 139 omitted - -# reduce 140 omitted - -# reduce 141 omitted - -# reduce 142 omitted - -# reduce 143 omitted - -# reduce 144 omitted - -# reduce 145 omitted - -# reduce 146 omitted - -# reduce 147 omitted - -# reduce 148 omitted - -# reduce 149 omitted - -# reduce 150 omitted - -# reduce 151 omitted - -# reduce 152 omitted - -# reduce 153 omitted - -# reduce 154 omitted - -# reduce 155 omitted - -# reduce 156 omitted - -# reduce 157 omitted - -# reduce 158 omitted - -# reduce 159 omitted - -# reduce 160 omitted - -# reduce 161 omitted - -# reduce 162 omitted - -# reduce 163 omitted - -# reduce 164 omitted - -# reduce 165 omitted - -# reduce 166 omitted - -# reduce 167 omitted - -# reduce 168 omitted - -# reduce 169 omitted - -# reduce 170 omitted - -module_eval(<<'.,.,', 'ruby18.y', 555) - def _reduce_171(val, _values, result) - result = @builder.assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 559) - def _reduce_172(val, _values, result) - rescue_body = @builder.rescue_body(val[3], - nil, nil, nil, - nil, val[4]) - - rescue_ = @builder.begin_body(val[2], [ rescue_body ]) - - result = @builder.assign(val[0], val[1], rescue_) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 569) - def _reduce_173(val, _values, result) - result = @builder.op_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 573) - def _reduce_174(val, _values, result) - result = @builder.op_assign( - @builder.index( - val[0], val[1], val[2], val[3]), - val[4], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 580) - def _reduce_175(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 587) - def _reduce_176(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 594) - def _reduce_177(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 601) - def _reduce_178(val, _values, result) - diagnostic :error, :dynamic_const, nil, val[2], [ val[3] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 605) - def _reduce_179(val, _values, result) - diagnostic :error, :dynamic_const, nil, val[1], [ val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 609) - def _reduce_180(val, _values, result) - result = @builder.op_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 613) - def _reduce_181(val, _values, result) - result = @builder.range_inclusive(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 617) - def _reduce_182(val, _values, result) - result = @builder.range_exclusive(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 621) - def _reduce_183(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 625) - def _reduce_184(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 629) - def _reduce_185(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 633) - def _reduce_186(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 637) - def _reduce_187(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 641) - def _reduce_188(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 645) - def _reduce_189(val, _values, result) - result = @builder.unary_op(val[0], - @builder.binary_op( - @builder.integer(val[1]), - val[2], val[3])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 652) - def _reduce_190(val, _values, result) - result = @builder.unary_op(val[0], - @builder.binary_op( - @builder.float(val[1]), - val[2], val[3])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 659) - def _reduce_191(val, _values, result) - result = @builder.unary_op(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 663) - def _reduce_192(val, _values, result) - result = @builder.unary_op(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 667) - def _reduce_193(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 671) - def _reduce_194(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 675) - def _reduce_195(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 679) - def _reduce_196(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 683) - def _reduce_197(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 687) - def _reduce_198(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 691) - def _reduce_199(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 695) - def _reduce_200(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 699) - def _reduce_201(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 703) - def _reduce_202(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 707) - def _reduce_203(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 711) - def _reduce_204(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 715) - def _reduce_205(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 719) - def _reduce_206(val, _values, result) - result = @builder.not_op(val[0], nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 723) - def _reduce_207(val, _values, result) - result = @builder.unary_op(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 727) - def _reduce_208(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 731) - def _reduce_209(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 735) - def _reduce_210(val, _values, result) - result = @builder.logical_op(:and, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 739) - def _reduce_211(val, _values, result) - result = @builder.logical_op(:or, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 743) - def _reduce_212(val, _values, result) - result = @builder.keyword_cmd(:defined?, val[0], nil, [ val[2] ], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 747) - def _reduce_213(val, _values, result) - result = @builder.ternary(val[0], val[1], - val[2], val[3], val[4]) - - result - end -.,., - -# reduce 214 omitted - -# reduce 215 omitted - -# reduce 216 omitted - -module_eval(<<'.,.,', 'ruby18.y', 757) - def _reduce_217(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 761) - def _reduce_218(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 765) - def _reduce_219(val, _values, result) - result = val[0] << @builder.splat(val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 769) - def _reduce_220(val, _values, result) - result = [ @builder.associate(nil, val[0], nil) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 773) - def _reduce_221(val, _values, result) - result = [ @builder.splat(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 778) - def _reduce_222(val, _values, result) - result = [ val[0], [], val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 782) - def _reduce_223(val, _values, result) - result = [ val[0], val[1], val[3] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 786) - def _reduce_224(val, _values, result) - result = [ val[0], [ val[1] ], val[3] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 790) - def _reduce_225(val, _values, result) - result = [ val[0], val[1] << val[3], val[5] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 795) - def _reduce_226(val, _values, result) - result = [ nil, [], nil ] - - result - end -.,., - -# reduce 227 omitted - -module_eval(<<'.,.,', 'ruby18.y', 801) - def _reduce_228(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 805) - def _reduce_229(val, _values, result) - result = val[0].concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 809) - def _reduce_230(val, _values, result) - result = val[0].concat( - [ @builder.splat(val[2], val[3]), - *val[4] ]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 815) - def _reduce_231(val, _values, result) - result = [ @builder.associate(nil, val[0], nil), - *val[1] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 820) - def _reduce_232(val, _values, result) - result = [ @builder.associate(nil, val[0], nil), - @builder.splat(val[2], val[3]), - *val[4] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 826) - def _reduce_233(val, _values, result) - result = val[0].concat( - [ @builder.associate(nil, val[2], nil), - *val[3] ]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 832) - def _reduce_234(val, _values, result) - result = val[0].concat( - [ @builder.associate(nil, val[2], nil), - @builder.splat(val[4], val[5]), - *val[6] ]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 839) - def _reduce_235(val, _values, result) - result = [ @builder.splat(val[0], val[1]), - *val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 844) - def _reduce_236(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 849) - def _reduce_237(val, _values, result) - result = [ val[0], *val[2].concat(val[3]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 853) - def _reduce_238(val, _values, result) - result = [ val[0], val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 857) - def _reduce_239(val, _values, result) - result = [ val[0], - @builder.splat(val[2], val[3]), - *val[4] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 863) - def _reduce_240(val, _values, result) - result = [ val[0], - *val[2]. - push(@builder.splat(val[4], val[5])). - concat(val[6]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 870) - def _reduce_241(val, _values, result) - result = [ @builder.associate(nil, val[0], nil), - *val[1] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 875) - def _reduce_242(val, _values, result) - result = [ @builder.associate(nil, val[0], nil), - @builder.splat(val[2], val[3]), - *val[4] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 881) - def _reduce_243(val, _values, result) - result = [ val[0], - @builder.associate(nil, val[2], nil), - *val[3] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 887) - def _reduce_244(val, _values, result) - result = [ val[0], - *val[2]. - push(@builder.associate(nil, val[4], nil)). - concat(val[5]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 894) - def _reduce_245(val, _values, result) - result = [ val[0], - @builder.associate(nil, val[2], nil), - @builder.splat(val[4], val[5]), - *val[6] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 901) - def _reduce_246(val, _values, result) - result = [ val[0], - *val[2]. - push(@builder.associate(nil, val[4], nil)). - push(@builder.splat(val[6], val[7])). - concat(val[8]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 909) - def _reduce_247(val, _values, result) - result = [ @builder.splat(val[0], val[1]), - *val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 914) - def _reduce_248(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 918) - def _reduce_249(val, _values, result) - result = @lexer.cmdarg.dup - @lexer.cmdarg.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 923) - def _reduce_250(val, _values, result) - @lexer.cmdarg = val[0] - - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 930) - def _reduce_251(val, _values, result) - result = [ nil, val[0], nil ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 934) - def _reduce_252(val, _values, result) - @lexer.state = :expr_endarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 938) - def _reduce_253(val, _values, result) - result = [ val[0], [], val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 942) - def _reduce_254(val, _values, result) - @lexer.state = :expr_endarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 946) - def _reduce_255(val, _values, result) - result = [ val[0], val[1], val[3] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 951) - def _reduce_256(val, _values, result) - result = @builder.block_pass(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 956) - def _reduce_257(val, _values, result) - result = [ val[1] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 960) - def _reduce_258(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 965) - def _reduce_259(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 969) - def _reduce_260(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 974) - def _reduce_261(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 978) - def _reduce_262(val, _values, result) - result = val[0] << @builder.splat(val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 982) - def _reduce_263(val, _values, result) - result = [ @builder.splat(val[0], val[1]) ] - - result - end -.,., - -# reduce 264 omitted - -# reduce 265 omitted - -# reduce 266 omitted - -# reduce 267 omitted - -# reduce 268 omitted - -# reduce 269 omitted - -# reduce 270 omitted - -# reduce 271 omitted - -module_eval(<<'.,.,', 'ruby18.y', 995) - def _reduce_272(val, _values, result) - result = @builder.call_method(nil, nil, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 999) - def _reduce_273(val, _values, result) - result = @builder.begin_keyword(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1003) - def _reduce_274(val, _values, result) - @lexer.state = :expr_endarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1007) - def _reduce_275(val, _values, result) - result = @builder.begin(val[0], val[1], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1011) - def _reduce_276(val, _values, result) - result = @builder.begin(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1015) - def _reduce_277(val, _values, result) - result = @builder.const_fetch(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1019) - def _reduce_278(val, _values, result) - result = @builder.const_global(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1023) - def _reduce_279(val, _values, result) - result = @builder.index(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1027) - def _reduce_280(val, _values, result) - result = @builder.array(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1031) - def _reduce_281(val, _values, result) - result = @builder.associate(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1035) - def _reduce_282(val, _values, result) - result = @builder.keyword_cmd(:return, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1039) - def _reduce_283(val, _values, result) - result = @builder.keyword_cmd(:yield, val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1043) - def _reduce_284(val, _values, result) - result = @builder.keyword_cmd(:yield, val[0], val[1], [], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1047) - def _reduce_285(val, _values, result) - result = @builder.keyword_cmd(:yield, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1051) - def _reduce_286(val, _values, result) - result = @builder.keyword_cmd(:defined?, val[0], - val[2], [ val[3] ], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1056) - def _reduce_287(val, _values, result) - method_call = @builder.call_method(nil, nil, val[0]) - - begin_t, args, body, end_t = val[1] - result = @builder.block(method_call, - begin_t, args, body, end_t) - - result - end -.,., - -# reduce 288 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1065) - def _reduce_289(val, _values, result) - begin_t, args, body, end_t = val[1] - result = @builder.block(val[0], - begin_t, args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1071) - def _reduce_290(val, _values, result) - else_t, else_ = val[4] - result = @builder.condition(val[0], val[1], val[2], - val[3], else_t, - else_, val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1078) - def _reduce_291(val, _values, result) - else_t, else_ = val[4] - result = @builder.condition(val[0], val[1], val[2], - else_, else_t, - val[3], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1085) - def _reduce_292(val, _values, result) - @lexer.cond.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1089) - def _reduce_293(val, _values, result) - @lexer.cond.pop - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1093) - def _reduce_294(val, _values, result) - result = @builder.loop(:while, val[0], val[2], val[3], - val[5], val[6]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1098) - def _reduce_295(val, _values, result) - @lexer.cond.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1102) - def _reduce_296(val, _values, result) - @lexer.cond.pop - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1106) - def _reduce_297(val, _values, result) - result = @builder.loop(:until, val[0], val[2], val[3], - val[5], val[6]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1111) - def _reduce_298(val, _values, result) - when_bodies = val[3][0..-2] - else_t, else_body = val[3][-1] - - result = @builder.case(val[0], val[1], - when_bodies, else_t, else_body, - val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1120) - def _reduce_299(val, _values, result) - when_bodies = val[2][0..-2] - else_t, else_body = val[2][-1] - - result = @builder.case(val[0], nil, - when_bodies, else_t, else_body, - val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1129) - def _reduce_300(val, _values, result) - result = @builder.case(val[0], nil, - [], val[2], val[3], - val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1135) - def _reduce_301(val, _values, result) - @lexer.cond.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1139) - def _reduce_302(val, _values, result) - @lexer.cond.pop - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1143) - def _reduce_303(val, _values, result) - result = @builder.for(val[0], val[1], - val[2], val[4], - val[5], val[7], val[8]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1149) - def _reduce_304(val, _values, result) - @static_env.extend_static - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1153) - def _reduce_305(val, _values, result) - if in_def? - diagnostic :error, :class_in_def, nil, val[0] - end - - lt_t, superclass = val[2] - result = @builder.def_class(val[0], val[1], - lt_t, superclass, - val[4], val[5]) - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1166) - def _reduce_306(val, _values, result) - result = @def_level - @def_level = 0 - - @static_env.extend_static - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1173) - def _reduce_307(val, _values, result) - result = @builder.def_sclass(val[0], val[1], val[2], - val[5], val[6]) - - @static_env.unextend - - @def_level = val[4] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1182) - def _reduce_308(val, _values, result) - @static_env.extend_static - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1186) - def _reduce_309(val, _values, result) - if in_def? - diagnostic :error, :module_in_def, nil, val[0] - end - - result = @builder.def_module(val[0], val[1], - val[3], val[4]) - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1197) - def _reduce_310(val, _values, result) - @def_level += 1 - @static_env.extend_static - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1202) - def _reduce_311(val, _values, result) - result = @builder.def_method(val[0], val[1], - val[3], val[4], val[5]) - - @static_env.unextend - @def_level -= 1 - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1210) - def _reduce_312(val, _values, result) - @lexer.state = :expr_fname - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1214) - def _reduce_313(val, _values, result) - @def_level += 1 - @static_env.extend_static - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1219) - def _reduce_314(val, _values, result) - result = @builder.def_singleton(val[0], val[1], val[2], - val[4], val[6], val[7], val[8]) - - @static_env.unextend - @def_level -= 1 - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1227) - def _reduce_315(val, _values, result) - result = @builder.keyword_cmd(:break, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1231) - def _reduce_316(val, _values, result) - result = @builder.keyword_cmd(:next, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1235) - def _reduce_317(val, _values, result) - result = @builder.keyword_cmd(:redo, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1239) - def _reduce_318(val, _values, result) - result = @builder.keyword_cmd(:retry, val[0]) - - result - end -.,., - -# reduce 319 omitted - -# reduce 320 omitted - -# reduce 321 omitted - -# reduce 322 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1249) - def _reduce_323(val, _values, result) - result = val[1] - - result - end -.,., - -# reduce 324 omitted - -# reduce 325 omitted - -# reduce 326 omitted - -# reduce 327 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1259) - def _reduce_328(val, _values, result) - else_t, else_ = val[4] - result = [ val[0], - @builder.condition(val[0], val[1], val[2], - val[3], else_t, - else_, nil), - ] - - result - end -.,., - -# reduce 329 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1270) - def _reduce_330(val, _values, result) - result = val - - result - end -.,., - -# reduce 331 omitted - -# reduce 332 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1278) - def _reduce_333(val, _values, result) - result = [ @builder.arg_expr(val[0]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1282) - def _reduce_334(val, _values, result) - result = val[0] << @builder.arg_expr(val[2]) - - result - end -.,., - -# reduce 335 omitted - -# reduce 336 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1289) - def _reduce_337(val, _values, result) - result = val[0]. - push(@builder.blockarg_expr(val[2], val[3])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1294) - def _reduce_338(val, _values, result) - result = val[0]. - push(@builder.restarg_expr(val[2], val[3])). - push(@builder.blockarg_expr(val[5], val[6])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1300) - def _reduce_339(val, _values, result) - result = val[0]. - push(@builder.restarg_expr(val[2])). - push(@builder.blockarg_expr(val[4], val[5])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1306) - def _reduce_340(val, _values, result) - result = val[0]. - push(@builder.restarg_expr(val[2], val[3])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1311) - def _reduce_341(val, _values, result) - result = val[0]. - push(@builder.restarg_expr(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1316) - def _reduce_342(val, _values, result) - result = [ @builder.restarg_expr(val[0], val[1]), - @builder.blockarg_expr(val[3], val[4]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1321) - def _reduce_343(val, _values, result) - result = [ @builder.restarg_expr(val[0]), - @builder.blockarg_expr(val[2], val[3]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1326) - def _reduce_344(val, _values, result) - result = [ @builder.restarg_expr(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1330) - def _reduce_345(val, _values, result) - result = [ @builder.restarg_expr(val[0]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1334) - def _reduce_346(val, _values, result) - result = [ @builder.blockarg_expr(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1340) - def _reduce_347(val, _values, result) - result = @builder.args(nil, [], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1344) - def _reduce_348(val, _values, result) - result = @builder.args(val[0], [], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1348) - def _reduce_349(val, _values, result) - result = @builder.args(val[0], [], val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1352) - def _reduce_350(val, _values, result) - result = @builder.args(val[0], val[1], val[2], false) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1357) - def _reduce_351(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1361) - def _reduce_352(val, _values, result) - result = [ val[0], val[2], val[3], val[4] ] - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1368) - def _reduce_353(val, _values, result) - begin_t, block_args, body, end_t = val[1] - result = @builder.block(val[0], - begin_t, block_args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1374) - def _reduce_354(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1380) - def _reduce_355(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1387) - def _reduce_356(val, _values, result) - lparen_t, args, rparen_t = val[1] - result = @builder.call_method(nil, nil, val[0], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1393) - def _reduce_357(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1399) - def _reduce_358(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1405) - def _reduce_359(val, _values, result) - result = @builder.call_method(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1409) - def _reduce_360(val, _values, result) - lparen_t, args, rparen_t = val[1] - result = @builder.keyword_cmd(:super, val[0], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1415) - def _reduce_361(val, _values, result) - result = @builder.keyword_cmd(:zsuper, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1420) - def _reduce_362(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1424) - def _reduce_363(val, _values, result) - result = [ val[0], val[2], val[3], val[4] ] - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1430) - def _reduce_364(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1434) - def _reduce_365(val, _values, result) - result = [ val[0], val[2], val[3], val[4] ] - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1441) - def _reduce_366(val, _values, result) - result = [ @builder.when(val[0], val[1], val[2], val[3]), - *val[4] ] - - result - end -.,., - -# reduce 367 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1448) - def _reduce_368(val, _values, result) - result = val[0] << @builder.splat(val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1452) - def _reduce_369(val, _values, result) - result = [ @builder.splat(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1457) - def _reduce_370(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -# reduce 371 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1463) - def _reduce_372(val, _values, result) - assoc_t, exc_var = val[2] - - if val[1] - exc_list = @builder.array(nil, val[1], nil) - end - - result = [ @builder.rescue_body(val[0], - exc_list, assoc_t, exc_var, - val[3], val[4]), - *val[5] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1476) - def _reduce_373(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1481) - def _reduce_374(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -# reduce 375 omitted - -# reduce 376 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1488) - def _reduce_377(val, _values, result) - result = [ val[0], val[1] ] - - result - end -.,., - -# reduce 378 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1494) - def _reduce_379(val, _values, result) - result = [ val[0], val[1] ] - - result - end -.,., - -# reduce 380 omitted - -# reduce 381 omitted - -# reduce 382 omitted - -# reduce 383 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1504) - def _reduce_384(val, _values, result) - result = @builder.string_compose(nil, val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1509) - def _reduce_385(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1513) - def _reduce_386(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1518) - def _reduce_387(val, _values, result) - result = @builder.string_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1522) - def _reduce_388(val, _values, result) - result = @builder.string(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1527) - def _reduce_389(val, _values, result) - result = @builder.xstring_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1532) - def _reduce_390(val, _values, result) - opts = @builder.regexp_options(val[3]) - result = @builder.regexp_compose(val[0], val[1], val[2], opts) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1538) - def _reduce_391(val, _values, result) - result = @builder.words_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1543) - def _reduce_392(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1547) - def _reduce_393(val, _values, result) - result = val[0] << @builder.word(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1552) - def _reduce_394(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1556) - def _reduce_395(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1561) - def _reduce_396(val, _values, result) - result = @builder.words_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1566) - def _reduce_397(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1570) - def _reduce_398(val, _values, result) - result = val[0] << @builder.string_internal(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1575) - def _reduce_399(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1579) - def _reduce_400(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1584) - def _reduce_401(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1588) - def _reduce_402(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1593) - def _reduce_403(val, _values, result) - result = @builder.string_internal(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1597) - def _reduce_404(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1601) - def _reduce_405(val, _values, result) - @lexer.cond.push(false) - @lexer.cmdarg.push(false) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1606) - def _reduce_406(val, _values, result) - @lexer.cond.lexpop - @lexer.cmdarg.lexpop - - result = @builder.begin(val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1614) - def _reduce_407(val, _values, result) - result = @builder.gvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1618) - def _reduce_408(val, _values, result) - result = @builder.ivar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1622) - def _reduce_409(val, _values, result) - result = @builder.cvar(val[0]) - - result - end -.,., - -# reduce 410 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1629) - def _reduce_411(val, _values, result) - result = @builder.symbol(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1634) - def _reduce_412(val, _values, result) - result = @builder.symbol_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1639) - def _reduce_413(val, _values, result) - result = @builder.integer(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1643) - def _reduce_414(val, _values, result) - result = @builder.float(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1647) - def _reduce_415(val, _values, result) - result = @builder.negate(val[0], - @builder.integer(val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1652) - def _reduce_416(val, _values, result) - result = @builder.negate(val[0], - @builder.float(val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1658) - def _reduce_417(val, _values, result) - result = @builder.ident(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1662) - def _reduce_418(val, _values, result) - result = @builder.ivar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1666) - def _reduce_419(val, _values, result) - result = @builder.gvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1670) - def _reduce_420(val, _values, result) - result = @builder.cvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1674) - def _reduce_421(val, _values, result) - result = @builder.const(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1678) - def _reduce_422(val, _values, result) - result = @builder.nil(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1682) - def _reduce_423(val, _values, result) - result = @builder.self(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1686) - def _reduce_424(val, _values, result) - result = @builder.true(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1690) - def _reduce_425(val, _values, result) - result = @builder.false(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1694) - def _reduce_426(val, _values, result) - result = @builder.__FILE__(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1698) - def _reduce_427(val, _values, result) - result = @builder.__LINE__(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1703) - def _reduce_428(val, _values, result) - result = @builder.accessible(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1708) - def _reduce_429(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1713) - def _reduce_430(val, _values, result) - result = @builder.nth_ref(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1717) - def _reduce_431(val, _values, result) - result = @builder.back_ref(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1722) - def _reduce_432(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1726) - def _reduce_433(val, _values, result) - result = [ val[0], val[1] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1730) - def _reduce_434(val, _values, result) - yyerrok - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1736) - def _reduce_435(val, _values, result) - result = @builder.args(val[0], val[1], val[3]) - - @lexer.state = :expr_beg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1742) - def _reduce_436(val, _values, result) - result = @builder.args(nil, val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1747) - def _reduce_437(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1754) - def _reduce_438(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1760) - def _reduce_439(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1766) - def _reduce_440(val, _values, result) - result = val[0]. - concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1771) - def _reduce_441(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1777) - def _reduce_442(val, _values, result) - result = val[0]. - concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1782) - def _reduce_443(val, _values, result) - result = val[0]. - concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1787) - def _reduce_444(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1791) - def _reduce_445(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1796) - def _reduce_446(val, _values, result) - diagnostic :error, :argument_const, nil, val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1800) - def _reduce_447(val, _values, result) - diagnostic :error, :argument_ivar, nil, val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1804) - def _reduce_448(val, _values, result) - diagnostic :error, :argument_gvar, nil, val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1808) - def _reduce_449(val, _values, result) - diagnostic :error, :argument_cvar, nil, val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1812) - def _reduce_450(val, _values, result) - @static_env.declare val[0][0] - - result = @builder.arg(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1819) - def _reduce_451(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1823) - def _reduce_452(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1828) - def _reduce_453(val, _values, result) - @static_env.declare val[0][0] - - result = @builder.optarg(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1835) - def _reduce_454(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1839) - def _reduce_455(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -# reduce 456 omitted - -# reduce 457 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1846) - def _reduce_458(val, _values, result) - @static_env.declare val[1][0] - - result = [ @builder.restarg(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1852) - def _reduce_459(val, _values, result) - result = [ @builder.restarg(val[0]) ] - - result - end -.,., - -# reduce 460 omitted - -# reduce 461 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1859) - def _reduce_462(val, _values, result) - @static_env.declare val[1][0] - - result = @builder.blockarg(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1866) - def _reduce_463(val, _values, result) - result = [ val[1] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1870) - def _reduce_464(val, _values, result) - result = [] - - result - end -.,., - -# reduce 465 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1876) - def _reduce_466(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1881) - def _reduce_467(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1885) - def _reduce_468(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1889) - def _reduce_469(val, _values, result) - result = @builder.pair_list_18(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1894) - def _reduce_470(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1898) - def _reduce_471(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby18.y', 1903) - def _reduce_472(val, _values, result) - result = @builder.pair(val[0], val[1], val[2]) - - result - end -.,., - -# reduce 473 omitted - -# reduce 474 omitted - -# reduce 475 omitted - -# reduce 476 omitted - -# reduce 477 omitted - -# reduce 478 omitted - -# reduce 479 omitted - -# reduce 480 omitted - -# reduce 481 omitted - -# reduce 482 omitted - -# reduce 483 omitted - -# reduce 484 omitted - -# reduce 485 omitted - -# reduce 486 omitted - -# reduce 487 omitted - -# reduce 488 omitted - -# reduce 489 omitted - -# reduce 490 omitted - -# reduce 491 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1916) - def _reduce_492(val, _values, result) - yyerrok - - result - end -.,., - -# reduce 493 omitted - -# reduce 494 omitted - -# reduce 495 omitted - -module_eval(<<'.,.,', 'ruby18.y', 1925) - def _reduce_496(val, _values, result) - result = nil - - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Ruby18 -end # module Parser diff --git a/test/racc/regress/ruby22 b/test/racc/regress/ruby22 deleted file mode 100644 index 4731071275..0000000000 --- a/test/racc/regress/ruby22 +++ /dev/null @@ -1,11180 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.2 -# from Racc grammar file "". -# - -require 'racc/parser.rb' - - -require 'parser' - -Parser.check_for_encoding_support - -module Parser - class Ruby22 < Racc::Parser - -module_eval(<<'...end ruby22.y/module_eval...', 'ruby22.y', 2374) - - def version - 22 - end - - def default_encoding - Encoding::UTF_8 - end -...end ruby22.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - -476, -97, 268, 214, 215, -98, -105, -476, -476, -476, - -490, 568, -476, -476, -476, 610, -476, 580, 217, 612, - -288, 581, 214, 215, -476, -491, -476, -476, -476, 647, - 268, 268, 214, 215, -104, 589, -476, -476, 568, -476, - -476, -476, -476, -476, 568, 568, 212, 109, 568, 815, - -100, 121, -100, -83, -102, -99, 214, 215, 268, 218, - -288, 806, -69, 574, 646, -102, -97, -476, -476, -476, - -476, -476, -476, -476, -476, -476, -476, -476, -476, -476, - -476, -98, 609, -476, -476, -476, 611, -476, -476, 715, - 267, -476, 206, -96, -476, -476, 263, -476, 218, -476, - 207, -476, -105, -476, -476, -99, -476, -476, -476, -476, - -476, -88, -476, -479, -476, -89, -96, 218, 267, 267, - -479, -479, -479, 263, -101, -479, -479, -479, -476, -479, - 113, -476, -476, -476, -476, 112, -476, -479, -476, -479, - -479, -479, 588, -476, -95, 715, 267, -101, 715, -479, - -479, 218, -479, -479, -479, -479, -479, 113, 208, 814, - -91, -91, 112, 113, 113, 113, 842, 113, 112, 112, - 112, -100, 112, -102, -99, -93, -100, 213, -102, -99, - -479, -479, -479, -479, -479, -479, -479, -479, -479, -479, - -479, -479, -479, -479, 113, 257, -479, -479, -479, 112, - -479, -479, -574, -93, -479, 316, -103, -479, -479, 317, - -479, 597, -479, -574, -479, -90, -479, -479, 444, -479, - -479, -479, -479, -479, -291, -479, 218, -479, -91, 214, - 215, -291, -291, -291, 647, 260, 527, -291, -291, 526, - -291, -479, 261, -101, -479, -479, -479, -479, -101, -479, - 113, -479, -571, 113, 113, 112, -479, -92, 112, 112, - -291, -291, 386, -291, -291, -291, -291, -291, -91, 646, - -93, -91, -575, 396, -105, 399, 599, 598, 398, 397, - -91, 548, 597, 545, 544, 543, 747, 546, 443, 91, - 92, -291, -291, -291, -291, -291, -291, -291, -291, -291, - -291, -291, -291, -291, -291, -476, -572, -291, -291, -291, - -93, 630, -476, -93, -490, -291, -94, -571, -291, 91, - 92, -476, -93, -291, 113, -291, 515, -291, -291, 112, - -291, -291, -291, -291, -291, 597, -291, -578, -291, 445, - -571, -491, -476, 446, -578, -578, -578, 599, 598, -476, - -578, -578, -291, -578, 647, -291, -291, 749, -94, -479, - -291, -88, -578, 217, 833, -578, -479, -103, 93, 94, - -97, -572, 477, -578, -578, -479, -578, -578, -578, -578, - -578, 548, -104, 545, 544, 543, 515, 546, -89, 646, - 527, 647, 597, 529, -572, 597, 486, -98, 93, 94, - 599, 598, 595, -412, -578, -578, -578, -578, -578, -578, - -578, -578, -578, -578, -578, -578, -578, -578, -578, 625, - -578, -578, -578, 597, 631, -578, 646, 113, -578, 626, - -574, -578, 112, -95, -578, 597, -578, 770, -578, -578, - -578, -578, -104, -578, -578, -578, -578, -578, 488, -578, - -578, -578, 597, -578, 490, 597, -412, 599, 598, 595, - 599, 598, 600, -412, 957, -578, -91, 756, -578, -578, - -578, -92, -412, -578, 662, -100, -93, -578, -578, -578, - -101, 498, -578, -578, -578, -102, -578, -479, 599, 598, - 602, -412, -578, -100, -479, -578, -578, -578, -578, -578, - 599, 598, 604, 771, -574, -68, -578, -578, -578, -578, - -578, -578, -578, -578, -90, 218, 860, 599, 598, 608, - 599, 598, 613, -99, 214, 215, -486, -578, 548, -485, - 545, 544, 543, -486, 546, 501, -485, -578, -578, -578, - -578, -578, -578, -578, -578, -578, -578, -578, -578, -578, - -578, 553, 502, -578, -578, -578, -487, 772, -578, -102, - 509, -578, 556, -487, -578, -578, 701, -578, 272, -578, - 218, -578, -99, -578, -578, 704, -578, -578, -578, -578, - -578, 553, -578, -578, -578, 527, -484, 79, 529, 113, - -481, 263, 556, -484, 112, 564, 563, -481, -578, 80, - 557, -578, -578, -578, -578, 238, -578, -291, -578, 81, - -482, 210, 512, -101, -291, -291, -291, -482, 211, -291, - -291, -291, -334, -291, 440, 564, 563, 209, 516, -334, - 557, 441, -483, -291, -291, -291, 238, 235, -334, -483, - 442, 237, 236, -291, -291, 260, -291, -291, -291, -291, - -291, 548, 261, 545, 544, 543, -488, 546, 548, 218, - 545, 544, 543, -488, 546, 548, 530, 545, 544, 543, - 527, 546, -488, 529, -291, -291, -291, -291, -291, -291, - -291, -291, -291, -291, -291, -291, -291, -291, 238, 701, - -291, -291, -291, -489, 773, -291, 701, 238, -291, 531, - -489, -291, -291, 701, -291, 704, -291, 490, -291, -489, - -291, -291, 904, -291, -291, -291, -291, -291, 113, -291, - 235, -291, 574, 112, 237, 236, 238, 233, 234, 235, - 214, 215, 388, 237, 236, -291, 233, 234, -291, -291, - -291, -291, 113, -291, 113, -291, 578, 112, 579, 112, - -103, 5, 69, 70, 71, 9, 57, 614, 235, 507, - 63, 64, 237, 236, 617, 67, 508, 65, 66, 68, - 30, 31, 72, 73, 218, 506, -263, 981, 619, 29, - 28, 27, 101, 100, 102, 103, 741, 742, 19, 218, - 743, 107, 108, 635, 8, 45, 7, 10, 105, 104, - 106, 95, 56, 97, 96, 98, 623, 99, 107, 108, - 624, 91, 92, 263, 42, 43, 41, 238, 242, 247, - 248, 249, 244, 246, 254, 255, 250, 251, -281, 231, - 232, 517, 634, 252, 253, -281, 40, 637, 518, 33, - 564, 563, 58, 59, -281, 238, 60, 442, 35, 235, - 238, 241, 44, 237, 236, 238, 233, 234, 245, 243, - 239, 20, 240, 837, 806, 238, 89, 79, 82, 83, - 576, 84, 86, 85, 87, 837, 806, 577, 218, 80, - 88, 218, 256, 218, -240, -83, 575, 62, 666, 81, - 93, 94, 290, 69, 70, 71, 9, 57, 218, 520, - 584, 63, 64, 677, 682, 683, 67, 583, 65, 66, - 68, 30, 31, 72, 73, 685, 585, 689, 692, 693, - 29, 28, 27, 101, 100, 102, 103, 695, 697, 19, - 699, 707, 708, 709, 620, 8, 45, 292, 10, 105, - 104, 106, 95, 56, 97, 96, 98, 711, 99, 107, - 108, 574, 91, 92, 718, 42, 43, 41, 238, 242, - 247, 248, 249, 244, 246, 254, 255, 250, 251, -292, - 231, 232, -292, 736, 252, 253, -292, 40, 746, -292, - 294, 750, 751, 58, 59, -292, -264, 60, -292, 35, - 235, 757, 241, 44, 237, 236, 477, 233, 234, 245, - 243, 239, 20, 240, 477, 218, 257, 89, 79, 82, - 83, 584, 84, 86, 85, 87, 488, 490, 939, 799, - 80, 88, 677, 256, 218, 263, 263, 585, 62, 677, - 81, 93, 94, 5, 69, 70, 71, 9, 57, 238, - 806, 584, 63, 64, 218, 218, 831, 67, 939, 65, - 66, 68, 30, 31, 72, 73, 218, 585, 806, 841, - 218, 29, 28, 27, 101, 100, 102, 103, 218, 850, - 19, -265, 859, 861, 862, 635, 8, 45, 7, 10, - 105, 104, 106, 95, 56, 97, 96, 98, 692, 99, - 107, 108, 865, 91, 92, 867, 42, 43, 41, 238, - 242, 247, 248, 249, 244, 246, 254, 255, 250, 251, - -291, 231, 232, -488, 869, 252, 253, -291, 40, 871, - -488, 33, -575, 218, 58, 59, -291, 873, 60, -488, - 35, 235, 874, 241, 44, 237, 236, 877, 233, 234, - 245, 243, 239, 20, 240, 879, 880, 677, 89, 79, - 82, 83, -489, 84, 86, 85, 87, 882, -263, -489, - 886, 80, 88, 888, 256, 891, 692, 893, -489, 62, - 895, 81, 93, 94, 290, 69, 70, 71, 9, 57, - 897, 899, 986, 63, 64, 899, 218, 905, 67, 987, - 65, 66, 68, 30, 31, 72, 73, 907, 985, 909, - 915, 918, 29, 28, 27, 101, 100, 102, 103, 218, - 936, 19, 545, 544, 543, 922, 546, 8, 45, 292, - 10, 105, 104, 106, 95, 56, 97, 96, 98, -266, - 99, 107, 108, 933, 91, 92, 940, 42, 43, 41, - 238, 242, 247, 248, 249, 244, 246, 254, 255, 250, - 251, -291, 231, 232, -281, 941, 252, 253, -291, 40, - 950, -281, 33, -575, 951, 58, 59, -291, 959, 60, - -281, 35, 235, 961, 241, 44, 237, 236, 962, 233, - 234, 245, 243, 239, 20, 240, 967, 736, 692, 89, - 79, 82, 83, -292, 84, 86, 85, 87, 971, 973, - -292, 975, 80, 88, 977, 256, 977, 988, 989, -292, - 62, 899, 81, 93, 94, 290, 69, 70, 71, 9, - 57, 899, 899, 994, 63, 64, 959, -575, -574, 67, - 682, 65, 66, 68, 30, 31, 72, 73, 116, 117, - 118, 119, 120, 29, 28, 27, 101, 100, 102, 103, - 959, 936, 19, 545, 544, 543, 1013, 546, 8, 45, - 292, 10, 105, 104, 106, 95, 56, 97, 96, 98, - 1014, 99, 107, 108, 1015, 91, 92, 977, 42, 43, - 41, 238, 242, 247, 248, 249, 244, 246, 254, 255, - 250, 251, -291, 231, 232, 977, 977, 252, 253, -291, - 40, 218, 899, 33, -575, 959, 58, 59, -291, 977, - 60, nil, 35, 235, nil, 241, 44, 237, 236, nil, - 233, 234, 245, 243, 239, 20, 240, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, 256, nil, nil, nil, - nil, 62, nil, 81, 93, 94, 290, 69, 70, 71, - 9, 57, nil, nil, nil, 63, 64, nil, nil, nil, - 67, nil, 65, 66, 68, 30, 31, 72, 73, 116, - 117, 118, 119, 120, 29, 28, 27, 101, 100, 102, - 103, nil, nil, 19, 116, 117, 118, 119, 120, 8, - 45, 292, 10, 105, 104, 106, 95, 56, 97, 96, - 98, nil, 99, 107, 108, nil, 91, 92, nil, 42, - 43, 41, 238, 242, 247, 248, 249, 244, 246, 254, - 255, 250, 251, nil, 231, 232, nil, nil, 252, 253, - nil, 40, nil, nil, 294, nil, nil, 58, 59, nil, - nil, 60, nil, 35, 235, nil, 241, 44, 237, 236, - nil, 233, 234, 245, 243, 239, 20, 240, nil, nil, - nil, 89, 79, 82, 83, nil, 84, 86, 85, 87, - nil, nil, nil, nil, 80, 88, nil, 256, nil, nil, - nil, nil, 62, nil, 81, 93, 94, 290, 69, 70, - 71, 9, 57, nil, nil, nil, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 19, nil, nil, nil, nil, nil, - 8, 45, 292, 10, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, 238, 242, 247, 248, 249, 244, 246, - 254, 255, 250, 251, nil, 231, 232, nil, nil, 252, - 253, nil, 40, nil, nil, 294, nil, nil, 58, 59, - nil, nil, 60, nil, 35, 235, nil, 241, 44, 237, - 236, nil, 233, 234, 245, 243, 239, 20, 240, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, 256, nil, - nil, nil, nil, 62, nil, 81, 93, 94, 290, 69, - 70, 71, 9, 57, nil, nil, nil, 63, 64, nil, - nil, nil, 67, nil, 65, 66, 68, 30, 31, 72, - 73, nil, nil, nil, nil, nil, 29, 28, 27, 101, - 100, 102, 103, nil, nil, 19, nil, nil, nil, nil, - nil, 8, 45, 292, 10, 105, 104, 106, 95, 56, - 97, 96, 98, nil, 99, 107, 108, nil, 91, 92, - nil, 42, 43, 41, 238, 242, 247, 248, 249, 244, - 246, 254, 255, 250, 251, nil, 231, 232, nil, nil, - 252, 253, nil, 40, nil, nil, 33, nil, nil, 58, - 59, nil, nil, 60, nil, 35, 235, nil, 241, 44, - 237, 236, nil, 233, 234, 245, 243, 239, 20, 240, - nil, nil, nil, 89, 79, 82, 83, nil, 84, 86, - 85, 87, nil, nil, nil, nil, 80, 88, 218, 256, - nil, nil, nil, nil, 62, nil, 81, 93, 94, 5, - 69, 70, 71, 9, 57, nil, nil, nil, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 19, nil, nil, nil, - nil, nil, 8, 45, 7, 10, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, 238, 242, 247, 248, 249, - 244, 246, 254, 255, 250, 251, nil, 231, 232, nil, - nil, 252, 253, nil, 40, nil, nil, 33, nil, nil, - 58, 59, nil, nil, 60, nil, 35, 235, nil, 241, - 44, 237, 236, nil, 233, 234, 245, 243, 239, 20, - 240, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - 256, nil, nil, nil, nil, 62, nil, 81, 93, 94, - 290, 69, 70, 71, 9, 57, nil, nil, nil, 63, - 64, nil, nil, nil, 67, nil, 65, 66, 68, 30, - 31, 72, 73, nil, nil, nil, nil, nil, 29, 28, - 27, 101, 100, 102, 103, nil, nil, 19, nil, nil, - nil, nil, nil, 8, 45, 292, 10, 105, 104, 106, - 95, 56, 97, 96, 98, nil, 99, 107, 108, nil, - 91, 92, nil, 42, 43, 41, 238, 242, 247, 248, - 249, 244, 246, 254, 255, 250, 251, nil, 231, 232, - nil, nil, 252, 253, nil, 40, nil, nil, 33, nil, - nil, 58, 59, nil, nil, 60, nil, 35, 235, nil, - 241, 44, 237, 236, nil, 233, 234, 245, 243, 239, - 20, 240, nil, nil, nil, 89, 79, 82, 83, nil, - 84, 86, 85, 87, nil, nil, nil, nil, 80, 88, - nil, 256, nil, nil, nil, nil, 62, nil, 81, 93, - 94, 290, 69, 70, 71, 9, 57, nil, nil, nil, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, 8, 45, 292, 10, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, 238, 242, 247, - 248, 249, 244, 246, 254, 255, 250, 251, nil, 231, - 232, nil, nil, 252, 253, nil, 40, nil, nil, 33, - nil, nil, 58, 59, nil, nil, 60, nil, 35, 235, - nil, 241, 44, 237, 236, nil, 233, 234, 245, 243, - 239, 20, 240, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, 256, nil, nil, nil, nil, 62, nil, 81, - 93, 94, 290, 69, 70, 71, 9, 57, nil, nil, - nil, 63, 64, nil, nil, nil, 67, nil, 65, 66, - 68, 30, 31, 72, 73, nil, nil, nil, nil, nil, - 29, 28, 27, 101, 100, 102, 103, nil, nil, 19, - nil, nil, nil, nil, nil, 8, 45, 292, 10, 105, - 104, 106, 95, 56, 97, 96, 98, nil, 99, 107, - 108, nil, 91, 92, nil, 42, 43, 41, 238, 242, - 247, 248, 249, 244, 246, 254, 255, 250, 251, nil, - 231, 232, nil, nil, 252, 253, nil, 40, nil, nil, - 33, nil, nil, 58, 59, nil, nil, 60, nil, 35, - 235, nil, 241, 44, 237, 236, nil, 233, 234, 245, - 243, 239, 20, 240, nil, nil, nil, 89, 79, 82, - 83, nil, 84, 86, 85, 87, nil, nil, nil, nil, - 80, 88, nil, 256, nil, nil, nil, nil, 62, nil, - 81, 93, 94, 290, 69, 70, 71, 9, 57, nil, - nil, nil, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 19, nil, nil, nil, nil, nil, 8, 45, 292, 10, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, 238, - 242, 247, 248, 249, 244, 246, 254, 255, 250, 251, - nil, 231, 232, nil, nil, 252, 253, nil, 40, nil, - nil, 33, nil, nil, 58, 59, nil, nil, 60, nil, - 35, 235, nil, 241, 44, 237, 236, nil, 233, 234, - 245, 243, 239, 20, 240, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, 256, nil, nil, nil, nil, 62, - nil, 81, 93, 94, 290, 69, 70, 71, 9, 57, - nil, nil, nil, 63, 64, nil, nil, nil, 67, nil, - 65, 66, 68, 30, 31, 72, 73, nil, nil, nil, - nil, nil, 29, 28, 27, 101, 100, 102, 103, nil, - nil, 19, nil, nil, nil, nil, nil, 8, 45, 292, - 10, 105, 104, 106, 95, 56, 97, 96, 98, nil, - 99, 107, 108, nil, 91, 92, nil, 42, 43, 41, - 238, 242, 247, 248, 249, 244, 246, 254, 255, 250, - 251, nil, 231, 232, nil, nil, 252, 253, nil, 40, - nil, nil, 33, nil, nil, 58, 59, nil, nil, 60, - nil, 35, 235, nil, 241, 44, 237, 236, nil, 233, - 234, 245, 243, 239, 20, 240, nil, nil, nil, 89, - 79, 82, 83, nil, 84, 86, 85, 87, nil, nil, - nil, nil, 80, 88, nil, 256, nil, nil, nil, nil, - 62, nil, 81, 93, 94, 290, 69, 70, 71, 9, - 57, nil, nil, nil, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 19, nil, nil, nil, nil, nil, 8, 45, - 292, 10, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, 238, 242, 247, 248, 249, 244, 246, 254, 255, - 250, 251, nil, 231, 232, nil, nil, 252, 253, nil, - 40, nil, nil, 33, nil, nil, 58, 59, nil, nil, - 60, nil, 35, 235, nil, 241, 44, 237, 236, nil, - 233, 234, 245, 243, 239, 20, 240, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, 256, nil, nil, nil, - nil, 62, nil, 81, 93, 94, 290, 69, 70, 71, - 9, 57, nil, nil, nil, 63, 64, nil, nil, nil, - 67, nil, 65, 66, 68, 30, 31, 72, 73, nil, - nil, nil, nil, nil, 29, 28, 27, 101, 100, 102, - 103, nil, nil, 19, nil, nil, nil, nil, nil, 8, - 45, 292, 10, 105, 104, 106, 95, 56, 97, 96, - 98, nil, 99, 107, 108, nil, 91, 92, nil, 42, - 43, 41, 238, 242, 247, 248, 249, 244, 246, 254, - 255, 250, 251, nil, 231, 232, nil, nil, 252, 253, - nil, 40, nil, nil, 33, nil, nil, 58, 59, nil, - nil, 60, nil, 35, 235, nil, 241, 44, 237, 236, - nil, 233, 234, 245, 243, 239, 20, 240, nil, nil, - nil, 89, 79, 82, 83, nil, 84, 86, 85, 87, - nil, nil, nil, nil, 80, 88, nil, 256, nil, nil, - nil, nil, 62, nil, 81, 93, 94, 290, 69, 70, - 71, 9, 57, nil, nil, nil, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 19, nil, nil, nil, nil, nil, - 8, 45, 292, 10, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, 238, 242, 247, 248, 249, 244, 246, - 254, 255, 250, 251, nil, 231, 232, nil, nil, 252, - 253, nil, 40, nil, nil, 33, nil, nil, 58, 59, - nil, nil, 60, nil, 35, 235, nil, 241, 44, 237, - 236, nil, 233, 234, 245, 243, 239, 20, 240, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, 256, nil, - nil, nil, nil, 62, nil, 81, 93, 94, 290, 69, - 70, 71, 9, 57, nil, nil, nil, 63, 64, nil, - nil, nil, 67, nil, 65, 66, 68, 30, 31, 72, - 73, nil, nil, nil, nil, nil, 29, 28, 27, 101, - 100, 102, 103, nil, nil, 19, nil, nil, nil, nil, - nil, 8, 45, 292, 10, 105, 104, 106, 95, 56, - 97, 96, 98, nil, 99, 107, 108, nil, 91, 92, - nil, 42, 43, 41, 238, 242, 247, 248, 249, 244, - 246, 254, 255, 250, 251, nil, -597, -597, nil, nil, - 252, 253, nil, 40, nil, nil, 33, nil, nil, 58, - 59, nil, nil, 60, nil, 35, 235, nil, 241, 44, - 237, 236, nil, 233, 234, 245, 243, 239, 20, 240, - nil, nil, nil, 89, 79, 82, 83, nil, 84, 86, - 85, 87, nil, nil, nil, nil, 80, 88, nil, nil, - nil, nil, nil, nil, 62, nil, 81, 93, 94, 290, - 69, 70, 71, 9, 57, nil, nil, nil, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 19, nil, nil, nil, - nil, nil, 8, 45, 292, 10, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, 238, 242, 247, 248, 249, - 244, 246, 254, 255, 250, 251, nil, -597, -597, nil, - nil, 252, 253, nil, 40, nil, nil, 33, nil, nil, - 58, 59, nil, nil, 60, nil, 35, 235, nil, 241, - 44, 237, 236, nil, 233, 234, 245, 243, 239, 20, - 240, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, nil, nil, nil, 62, nil, 81, 93, 94, - 290, 69, 70, 71, 9, 57, nil, nil, nil, 63, - 64, nil, nil, nil, 67, nil, 65, 66, 68, 30, - 31, 72, 73, nil, nil, nil, nil, nil, 29, 28, - 27, 101, 100, 102, 103, nil, 548, 19, 545, 544, - 543, nil, 546, 8, 45, 292, 10, 105, 104, 106, - 95, 56, 97, 96, 98, nil, 99, 107, 108, nil, - 91, 92, nil, 42, 43, 41, 238, -597, -597, -597, - -597, 244, 246, nil, 701, -597, -597, nil, nil, nil, - nil, nil, 252, 253, nil, 40, nil, nil, 33, nil, - nil, 58, 59, nil, nil, 60, nil, 35, 235, nil, - 241, 44, 237, 236, nil, 233, 234, 245, 243, 239, - 20, 240, nil, nil, nil, 89, 79, 82, 83, nil, - 84, 86, 85, 87, nil, nil, nil, nil, 80, 88, - nil, nil, nil, nil, nil, nil, 62, nil, 81, 93, - 94, 290, 69, 70, 71, 9, 57, nil, nil, nil, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, 548, 19, 545, - 544, 543, nil, 546, 8, 45, 292, 10, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, 238, nil, nil, - 548, nil, 545, 544, 543, 701, 546, nil, nil, nil, - nil, nil, nil, 252, 253, nil, 40, nil, nil, 33, - nil, nil, 58, 59, nil, nil, 60, nil, 35, 235, - nil, 241, 44, 237, 236, nil, 233, 234, 701, nil, - 239, 20, 240, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, nil, nil, nil, 62, nil, 81, - 93, 94, 290, 69, 70, 71, 9, 57, nil, nil, - nil, 63, 64, nil, nil, nil, 67, nil, 65, 66, - 68, 30, 31, 72, 73, nil, nil, nil, nil, nil, - 29, 28, 27, 101, 100, 102, 103, nil, 548, 19, - 545, 544, 543, nil, 546, 8, 45, 292, 10, 105, - 104, 106, 95, 56, 97, 96, 98, nil, 99, 107, - 108, nil, 91, 92, nil, 42, 43, 41, 238, nil, - nil, nil, nil, nil, nil, nil, 701, nil, nil, nil, - nil, nil, nil, nil, 252, 253, nil, 40, nil, nil, - 33, nil, nil, 58, 59, nil, nil, 60, nil, 35, - 235, nil, 241, 44, 237, 236, nil, 233, 234, nil, - nil, 239, 20, 240, nil, nil, nil, 89, 79, 82, - 83, nil, 84, 86, 85, 87, nil, nil, nil, nil, - 80, 88, nil, nil, nil, nil, nil, nil, 62, nil, - 81, 93, 94, 290, 69, 70, 71, 9, 57, nil, - nil, nil, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 19, nil, nil, nil, nil, nil, 8, 45, 292, 10, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, 238, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 252, 253, nil, 40, nil, - nil, 33, nil, nil, 58, 59, nil, nil, 60, nil, - 35, 235, nil, 241, 44, 237, 236, nil, 233, 234, - nil, nil, 239, 20, 240, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, nil, nil, nil, 62, - nil, 81, 93, 94, 290, 69, 70, 71, 9, 57, - nil, nil, nil, 63, 64, nil, nil, nil, 67, nil, - 65, 66, 68, 30, 31, 72, 73, nil, nil, nil, - nil, nil, 29, 28, 27, 101, 100, 102, 103, nil, - nil, 19, nil, nil, nil, nil, nil, 8, 45, 292, - 10, 105, 104, 106, 95, 56, 97, 96, 98, nil, - 99, 107, 108, nil, 91, 92, nil, 42, 43, 41, - 238, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 252, 253, nil, 40, - nil, nil, 33, nil, nil, 58, 59, nil, nil, 60, - nil, 35, 235, nil, 241, 44, 237, 236, nil, 233, - 234, nil, nil, 239, 20, 240, nil, nil, nil, 89, - 79, 82, 83, nil, 84, 86, 85, 87, nil, nil, - nil, nil, 80, 88, nil, nil, nil, nil, nil, nil, - 62, nil, 81, 93, 94, 290, 69, 70, 71, 9, - 57, nil, nil, nil, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 19, nil, nil, nil, nil, nil, 8, 45, - 292, 10, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, 238, -597, -597, -597, -597, 244, 246, nil, nil, - -597, -597, nil, nil, nil, nil, nil, 252, 253, nil, - 40, nil, nil, 33, nil, nil, 58, 59, nil, nil, - 60, nil, 35, 235, nil, 241, 44, 237, 236, nil, - 233, 234, 245, 243, 239, 20, 240, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, nil, nil, - nil, 62, nil, 81, 93, 94, 290, 69, 70, 71, - 9, 57, nil, nil, nil, 63, 64, nil, nil, nil, - 67, nil, 65, 66, 68, 30, 31, 72, 73, nil, - nil, nil, nil, nil, 29, 28, 27, 101, 100, 102, - 103, nil, nil, 19, nil, nil, nil, nil, nil, 8, - 45, 292, 10, 105, 104, 106, 95, 56, 97, 96, - 98, nil, 99, 107, 108, nil, 91, 92, nil, 42, - 43, 41, 238, -597, -597, -597, -597, 244, 246, nil, - nil, -597, -597, nil, nil, nil, nil, nil, 252, 253, - nil, 40, nil, nil, 33, nil, nil, 58, 59, nil, - nil, 60, nil, 35, 235, nil, 241, 44, 237, 236, - nil, 233, 234, 245, 243, 239, 20, 240, nil, nil, - nil, 89, 79, 82, 83, nil, 84, 86, 85, 87, - nil, nil, nil, nil, 80, 88, nil, nil, nil, nil, - nil, nil, 62, nil, 81, 93, 94, 290, 69, 70, - 71, 9, 57, nil, nil, nil, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 19, nil, nil, nil, nil, nil, - 8, 45, 292, 10, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, 238, -597, -597, -597, -597, 244, 246, - nil, nil, -597, -597, nil, nil, nil, nil, nil, 252, - 253, nil, 40, nil, nil, 33, nil, nil, 58, 59, - nil, nil, 60, nil, 35, 235, nil, 241, 44, 237, - 236, nil, 233, 234, 245, 243, 239, 20, 240, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - nil, nil, nil, 62, nil, 81, 93, 94, 290, 69, - 70, 71, 9, 57, nil, nil, nil, 63, 64, nil, - nil, nil, 67, nil, 65, 66, 68, 30, 31, 72, - 73, nil, nil, nil, nil, nil, 29, 28, 27, 101, - 100, 102, 103, nil, nil, 19, nil, nil, nil, nil, - nil, 8, 45, 292, 10, 105, 104, 106, 95, 56, - 97, 96, 98, nil, 99, 107, 108, nil, 91, 92, - nil, 42, 43, 41, 238, -597, -597, -597, -597, 244, - 246, nil, nil, -597, -597, nil, nil, nil, nil, nil, - 252, 253, nil, 40, nil, nil, 33, nil, nil, 58, - 59, nil, nil, 60, nil, 35, 235, nil, 241, 44, - 237, 236, nil, 233, 234, 245, 243, 239, 20, 240, - nil, nil, nil, 89, 79, 82, 83, nil, 84, 86, - 85, 87, nil, nil, nil, nil, 80, 88, nil, nil, - nil, nil, nil, nil, 62, nil, 81, 93, 94, 290, - 69, 70, 71, 9, 57, nil, nil, nil, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 19, nil, nil, nil, - nil, nil, 8, 45, 292, 10, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, 238, -597, -597, -597, -597, - 244, 246, nil, nil, -597, -597, nil, nil, nil, nil, - nil, 252, 253, nil, 40, nil, nil, 33, nil, nil, - 58, 59, nil, nil, 60, nil, 35, 235, nil, 241, - 44, 237, 236, nil, 233, 234, 245, 243, 239, 20, - 240, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, nil, nil, nil, 62, nil, 81, 93, 94, - 290, 69, 70, 71, 9, 57, nil, nil, nil, 63, - 64, nil, nil, nil, 67, nil, 65, 66, 68, 30, - 31, 72, 73, nil, nil, nil, nil, nil, 29, 28, - 27, 101, 100, 102, 103, nil, nil, 19, nil, nil, - nil, nil, nil, 8, 45, 292, 10, 105, 104, 106, - 95, 56, 97, 96, 98, nil, 99, 107, 108, nil, - 91, 92, nil, 42, 43, 41, 238, 242, 247, 248, - 249, 244, 246, nil, nil, 250, 251, nil, nil, nil, - nil, nil, 252, 253, nil, 40, nil, nil, 33, nil, - nil, 58, 59, nil, nil, 60, nil, 35, 235, nil, - 241, 44, 237, 236, nil, 233, 234, 245, 243, 239, - 20, 240, nil, nil, nil, 89, 79, 82, 83, nil, - 84, 86, 85, 87, nil, nil, nil, nil, 80, 88, - nil, nil, nil, nil, nil, nil, 62, nil, 81, 93, - 94, 290, 69, 70, 71, 9, 57, nil, nil, nil, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, 8, 45, 292, 10, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, 238, 242, 247, - 248, 249, 244, 246, 254, nil, 250, 251, nil, nil, - nil, nil, nil, 252, 253, nil, 40, nil, nil, 33, - nil, nil, 58, 59, nil, nil, 60, nil, 35, 235, - nil, 241, 44, 237, 236, nil, 233, 234, 245, 243, - 239, 20, 240, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, nil, nil, nil, 62, nil, 81, - 93, 94, 69, 70, 71, 9, 57, nil, nil, nil, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, 8, 45, 7, 10, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, 238, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 252, 253, nil, 40, nil, nil, 33, - nil, nil, 58, 59, nil, nil, 60, nil, 35, 235, - nil, 241, 44, 237, 236, nil, 233, 234, nil, nil, - nil, 20, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, 238, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 252, 253, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, 235, nil, 241, 44, 237, 236, nil, 233, 234, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - 284, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, 238, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 252, 253, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, 281, 235, 279, nil, 44, 237, 236, 285, - 233, 234, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 282, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, 284, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, 281, nil, 279, nil, 44, nil, - nil, 285, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 282, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, 284, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, 281, nil, 279, nil, - 44, nil, nil, 285, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 282, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 307, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, nil, nil, 313, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 303, nil, nil, 299, - nil, nil, 58, 59, nil, nil, 60, nil, 298, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 307, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, nil, nil, 313, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 303, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - 548, nil, 545, 544, 543, 553, 546, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 556, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 315, nil, 551, 62, - nil, 81, 93, 94, 69, 70, 71, nil, 57, 564, - 563, nil, 63, 64, 557, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, 284, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, 281, nil, nil, nil, - 44, nil, nil, 285, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 282, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, 284, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, 285, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 282, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 19, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 20, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 19, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 20, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 19, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 20, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, 113, nil, nil, - nil, nil, 112, 62, nil, 81, 93, 94, 69, 70, - 71, nil, 57, nil, nil, nil, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 307, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - nil, nil, 313, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 348, nil, nil, 33, nil, nil, 58, 59, - nil, nil, 60, nil, 35, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 307, nil, nil, 105, 104, 106, 353, - 56, 97, 96, 354, nil, 99, 107, 108, nil, 91, - 92, nil, nil, nil, 313, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 360, nil, nil, 355, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 307, nil, nil, 105, 104, - 106, 353, 56, 97, 96, 354, nil, 99, 107, 108, - nil, 91, 92, nil, nil, nil, 313, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 355, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, 548, nil, - 545, 544, 543, 553, 546, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 556, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, nil, nil, 551, 62, nil, 81, - 93, 94, 69, 70, 71, 9, 57, 564, 563, nil, - 63, 64, 557, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, 8, 45, 7, 10, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 40, nil, nil, 33, - nil, nil, 58, 59, nil, nil, 60, nil, 35, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 20, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, nil, nil, 388, 62, nil, 81, - 93, 94, 69, 70, 71, nil, 57, nil, nil, nil, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 20, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 19, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 20, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 19, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 20, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 19, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 20, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - nil, nil, nil, 62, nil, 81, 93, 94, 69, 70, - 71, 9, 57, nil, nil, nil, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 19, nil, nil, nil, nil, nil, - 8, 45, nil, 10, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 40, nil, nil, 33, nil, nil, 58, 59, - nil, nil, 60, nil, 35, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 20, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, 404, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, 284, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - 281, nil, 279, nil, 44, nil, nil, 285, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 282, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, 404, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 19, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 20, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 20, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 19, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 20, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 19, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 20, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, 218, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, 284, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, 281, nil, 279, nil, - 44, nil, nil, 285, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 282, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, 284, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, 281, nil, - 279, nil, 44, nil, nil, 285, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 282, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, 284, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - 281, nil, 279, nil, 44, nil, nil, 285, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 282, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, 218, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, nil, nil, nil, 62, nil, 81, - 93, 94, 69, 70, 71, 9, 57, nil, nil, nil, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, 8, 45, nil, 10, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 40, nil, nil, 33, - nil, nil, 58, 59, nil, nil, 60, nil, 35, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 20, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 307, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, nil, nil, 313, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 303, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - 548, nil, 545, 544, 543, 553, 546, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 556, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 504, nil, 551, 62, - nil, 81, 93, 94, 69, 70, 71, nil, 57, 564, - 563, nil, 63, 64, 557, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 307, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, nil, nil, 313, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 303, nil, - nil, 299, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, 520, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 19, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 20, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 19, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 20, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 20, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 19, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 20, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 19, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 20, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, 284, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, 281, nil, 279, nil, - 44, nil, nil, 285, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 282, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, 284, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, 659, nil, 279, nil, - 44, nil, nil, 285, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 282, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, 284, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - 279, nil, 44, nil, nil, 285, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 282, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, nil, nil, nil, 62, - nil, 81, 93, 94, 69, 70, 71, 9, 57, nil, - nil, nil, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 19, nil, nil, nil, nil, nil, 8, 45, 292, 10, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 40, nil, - nil, 33, nil, nil, 58, 59, nil, nil, 60, nil, - 35, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 20, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, nil, nil, 388, 62, - nil, 81, 93, 94, 69, 70, 71, nil, 57, nil, - nil, nil, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 307, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, nil, nil, 313, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 303, nil, - nil, 299, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - 284, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, 281, nil, 279, nil, 44, nil, nil, 285, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 282, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 307, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - nil, nil, 313, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 303, nil, nil, 299, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 19, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 20, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - 284, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, 659, nil, nil, nil, 44, nil, nil, 285, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 282, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, 284, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, 285, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 282, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, 281, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, 284, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - 281, nil, 279, nil, 44, nil, nil, 285, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 282, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - 284, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, 281, nil, 279, nil, 44, nil, nil, 285, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 282, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, 754, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, 284, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, 659, nil, - 279, nil, 44, nil, nil, 285, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 282, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, 284, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, 279, nil, 44, nil, nil, 285, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 282, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 30, 31, 72, 73, nil, nil, nil, nil, - nil, 29, 28, 27, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 307, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, nil, nil, 313, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 303, nil, nil, 299, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 307, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, nil, nil, 313, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 303, nil, - nil, 299, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, 404, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 30, 31, - 72, 73, nil, nil, nil, nil, nil, 29, 28, 27, - 101, 100, 102, 103, nil, nil, 19, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 20, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 19, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 20, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 30, 31, 72, 73, nil, nil, - nil, nil, nil, 29, 28, 27, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 45, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, 42, 43, - 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 223, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, 44, nil, nil, nil, - nil, nil, nil, nil, nil, 228, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, nil, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 79, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 307, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, nil, nil, - 313, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 876, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 30, 31, 72, 73, - nil, nil, nil, nil, nil, 29, 28, 27, 101, 100, - 102, 103, nil, nil, 19, nil, nil, nil, nil, nil, - nil, 45, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - 42, 43, 41, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 223, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 20, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, 659, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 309, 310, 72, 73, nil, nil, nil, nil, nil, 305, - 306, 312, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, 284, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, nil, nil, - 279, nil, 44, nil, nil, 285, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 282, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, 69, 70, 71, 62, 57, 81, - 93, 94, 63, 64, nil, nil, nil, 67, nil, 65, - 66, 68, 309, 310, 72, 73, nil, nil, nil, nil, - nil, 305, 306, 312, 101, 100, 102, 103, nil, nil, - 230, nil, nil, nil, nil, nil, nil, 45, nil, nil, - 105, 104, 106, 95, 56, 97, 96, 98, nil, 99, - 107, 108, nil, 91, 92, nil, 42, 43, 41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 223, nil, - nil, 229, nil, nil, 58, 59, nil, nil, 60, nil, - nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, - nil, nil, nil, 228, nil, nil, nil, nil, 89, 79, - 82, 83, nil, 84, 86, 85, 87, nil, nil, nil, - nil, 80, 88, nil, nil, nil, 69, 70, 71, 62, - 57, 81, 93, 94, 63, 64, nil, nil, nil, 67, - nil, 65, 66, 68, 309, 310, 72, 73, nil, nil, - nil, nil, nil, 305, 306, 312, 101, 100, 102, 103, - nil, nil, 230, nil, nil, nil, nil, nil, nil, 307, - nil, nil, 105, 104, 106, 95, 56, 97, 96, 98, - nil, 99, 107, 108, nil, 91, 92, nil, nil, nil, - 313, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 876, nil, nil, 229, nil, nil, 58, 59, nil, nil, - 60, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 89, 79, 82, 83, nil, 84, 86, 85, 87, nil, - nil, nil, nil, 80, 88, nil, nil, nil, 69, 70, - 71, 62, 57, 81, 93, 94, 63, 64, nil, nil, - nil, 67, nil, 65, 66, 68, 309, 310, 72, 73, - nil, nil, nil, nil, nil, 305, 306, 312, 101, 100, - 102, 103, nil, nil, 230, nil, nil, nil, nil, nil, - nil, 307, nil, nil, 105, 104, 106, 95, 56, 97, - 96, 98, nil, 99, 107, 108, nil, 91, 92, nil, - nil, nil, 313, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 947, nil, nil, 229, nil, nil, 58, 59, - nil, nil, 60, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 89, 79, 82, 83, nil, 84, 86, 85, - 87, nil, nil, nil, nil, 80, 88, nil, nil, nil, - 69, 70, 71, 62, 57, 81, 93, 94, 63, 64, - nil, nil, nil, 67, nil, 65, 66, 68, 309, 310, - 72, 73, nil, nil, nil, nil, nil, 305, 306, 312, - 101, 100, 102, 103, nil, nil, 230, nil, nil, nil, - nil, nil, nil, 45, nil, nil, 105, 104, 106, 95, - 56, 97, 96, 98, nil, 99, 107, 108, nil, 91, - 92, nil, 42, 43, 41, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 223, nil, nil, 229, nil, nil, - 58, 59, nil, nil, 60, nil, nil, nil, nil, nil, - 44, nil, nil, nil, nil, nil, nil, nil, nil, 228, - nil, nil, nil, nil, 89, 79, 82, 83, nil, 84, - 86, 85, 87, nil, nil, nil, nil, 80, 88, nil, - nil, nil, 69, 70, 71, 62, 57, 81, 93, 94, - 63, 64, nil, nil, nil, 67, nil, 65, 66, 68, - 30, 31, 72, 73, nil, nil, nil, nil, nil, 29, - 28, 27, 101, 100, 102, 103, nil, nil, 230, nil, - nil, nil, nil, nil, nil, 45, nil, nil, 105, 104, - 106, 95, 56, 97, 96, 98, 284, 99, 107, 108, - nil, 91, 92, nil, 42, 43, 41, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 223, nil, nil, 229, - nil, nil, 58, 59, nil, nil, 60, nil, 281, nil, - 279, nil, 44, nil, nil, 285, nil, nil, nil, nil, - nil, 228, nil, nil, nil, nil, 89, 282, 82, 83, - nil, 84, 86, 85, 87, nil, nil, nil, nil, 80, - 88, nil, nil, nil, nil, -282, nil, 62, nil, 81, - 93, 94, -282, -282, -282, nil, nil, -282, -282, -282, - nil, -282, nil, nil, nil, nil, nil, nil, nil, nil, - nil, -282, -282, -282, nil, nil, nil, nil, nil, nil, - nil, -282, -282, nil, -282, -282, -282, -282, -282, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, -282, -282, -282, -282, -282, -282, -282, -282, - -282, -282, -282, -282, -282, -282, nil, nil, -282, -282, - -282, nil, nil, -282, nil, nil, -282, nil, nil, -282, - -282, nil, -282, nil, -282, nil, -282, nil, -282, -282, - nil, -282, -282, -282, -282, -282, nil, -282, nil, -282, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -282, nil, nil, -282, -282, -282, -282, - -579, -282, nil, -282, nil, nil, nil, -579, -579, -579, - nil, nil, -579, -579, -579, nil, -579, nil, nil, nil, - nil, nil, nil, nil, nil, -579, -579, -579, -579, nil, - nil, nil, nil, nil, nil, nil, -579, -579, nil, -579, - -579, -579, -579, -579, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, -579, -579, -579, - -579, -579, -579, -579, -579, -579, -579, -579, -579, -579, - -579, nil, nil, -579, -579, -579, nil, nil, -579, nil, - nil, -579, nil, nil, -579, -579, nil, -579, nil, -579, - nil, -579, nil, -579, -579, nil, -579, -579, -579, -579, - -579, nil, -579, -579, -579, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, -579, nil, - nil, -579, -579, -579, -579, -580, -579, nil, -579, nil, - nil, nil, -580, -580, -580, nil, nil, -580, -580, -580, - nil, -580, nil, nil, nil, nil, nil, nil, nil, nil, - -580, -580, -580, -580, nil, nil, nil, nil, nil, nil, - nil, -580, -580, nil, -580, -580, -580, -580, -580, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, -580, -580, -580, -580, -580, -580, -580, -580, - -580, -580, -580, -580, -580, -580, nil, nil, -580, -580, - -580, nil, nil, -580, nil, nil, -580, nil, nil, -580, - -580, nil, -580, nil, -580, nil, -580, nil, -580, -580, - nil, -580, -580, -580, -580, -580, nil, -580, -580, -580, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -580, nil, nil, -580, -580, -580, -580, - -411, -580, nil, -580, nil, nil, nil, -411, -411, -411, - nil, nil, -411, -411, -411, nil, -411, nil, nil, nil, - nil, nil, nil, nil, nil, -411, -411, -411, nil, nil, - nil, nil, nil, nil, nil, nil, -411, -411, nil, -411, - -411, -411, -411, -411, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, -411, -411, -411, - -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, - -411, nil, nil, -411, -411, -411, nil, nil, -411, nil, - 263, -411, nil, nil, -411, -411, nil, -411, nil, -411, - nil, -411, nil, -411, -411, nil, -411, -411, -411, -411, - -411, -298, -411, -411, -411, nil, nil, nil, -298, -298, - -298, nil, nil, -298, -298, -298, nil, -298, -411, nil, - nil, -411, -411, nil, -411, nil, -411, -298, -298, nil, - nil, nil, nil, nil, nil, nil, nil, -298, -298, nil, - -298, -298, -298, -298, -298, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, -298, -298, - -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, - -298, -298, nil, nil, -298, -298, -298, nil, nil, -298, - nil, 272, -298, nil, nil, -298, -298, nil, -298, nil, - -298, nil, -298, nil, -298, -298, nil, -298, -298, -298, - -298, -298, nil, -298, -246, -298, nil, nil, nil, nil, - nil, -246, -246, -246, nil, nil, -246, -246, -246, -298, - -246, nil, -298, -298, nil, -298, nil, -298, nil, -246, - -246, -246, nil, nil, nil, nil, nil, nil, nil, nil, - -246, -246, nil, -246, -246, -246, -246, -246, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, -246, -246, -246, -246, -246, -246, -246, -246, -246, - -246, -246, -246, -246, -246, nil, nil, -246, -246, -246, - nil, nil, -246, nil, 263, -246, nil, nil, -246, -246, - nil, -246, nil, -246, nil, -246, nil, -246, -246, nil, - -246, -246, -246, -246, -246, nil, -246, -246, -246, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, -246, nil, -246, -246, -246, nil, -246, nil, - -246, -246, -246, -246, nil, nil, -246, -246, -246, 548, - -246, 545, 544, 543, 553, 546, nil, nil, nil, -246, - -246, nil, nil, nil, nil, 556, nil, nil, nil, nil, - -246, -246, nil, -246, -246, -246, -246, -246, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 551, 548, nil, - 545, 544, 543, 553, 546, nil, 561, 560, 564, 563, - nil, nil, nil, 557, 556, 548, nil, 545, 544, 543, - 553, 546, -246, nil, nil, nil, nil, nil, nil, -246, - nil, 556, nil, nil, 263, -246, 551, 534, nil, 218, - nil, nil, nil, nil, nil, 561, 560, 564, 563, nil, - nil, nil, 557, 551, nil, nil, nil, -246, -246, nil, - nil, nil, 561, 560, 564, 563, nil, nil, nil, 557, - nil, nil, -246, nil, nil, -246, nil, nil, nil, nil, - -246, 173, 184, 174, 197, 170, 190, 180, 179, 200, - 201, 195, 178, 177, 172, 198, 202, 203, 182, 171, - 185, 189, 191, 183, 176, nil, nil, nil, 192, 199, - 194, 193, 186, 196, 181, 169, 188, 187, nil, nil, - nil, nil, nil, 168, 175, 166, 167, 163, 164, 165, - 124, 126, 123, nil, 125, nil, nil, nil, nil, nil, - nil, nil, nil, 157, 158, nil, 154, 136, 137, 138, - 145, 142, 144, nil, nil, 139, 140, nil, nil, nil, - 159, 160, 146, 147, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 151, 150, nil, - 135, 156, 153, 152, 161, 148, 149, 143, 141, 133, - 155, 134, nil, nil, 162, 89, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 88, - 173, 184, 174, 197, 170, 190, 180, 179, 200, 201, - 195, 178, 177, 172, 198, 202, 203, 182, 171, 185, - 189, 191, 183, 176, nil, nil, nil, 192, 199, 194, - 193, 186, 196, 181, 169, 188, 187, nil, nil, nil, - nil, nil, 168, 175, 166, 167, 163, 164, 165, 124, - 126, nil, nil, 125, nil, nil, nil, nil, nil, nil, - nil, nil, 157, 158, nil, 154, 136, 137, 138, 145, - 142, 144, nil, nil, 139, 140, nil, nil, nil, 159, - 160, 146, 147, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 151, 150, nil, 135, - 156, 153, 152, 161, 148, 149, 143, 141, 133, 155, - 134, nil, nil, 162, 89, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 88, 173, - 184, 174, 197, 170, 190, 180, 179, 200, 201, 195, - 178, 177, 172, 198, 202, 203, 182, 171, 185, 189, - 191, 183, 176, nil, nil, nil, 192, 199, 194, 193, - 186, 196, 181, 169, 188, 187, nil, nil, nil, nil, - nil, 168, 175, 166, 167, 163, 164, 165, 124, 126, - nil, nil, 125, nil, nil, nil, nil, nil, nil, nil, - nil, 157, 158, nil, 154, 136, 137, 138, 145, 142, - 144, nil, nil, 139, 140, nil, nil, nil, 159, 160, - 146, 147, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 151, 150, nil, 135, 156, - 153, 152, 161, 148, 149, 143, 141, 133, 155, 134, - nil, nil, 162, 89, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 88, 173, 184, - 174, 197, 170, 190, 180, 179, 200, 201, 195, 178, - 177, 172, 198, 202, 203, 182, 171, 185, 189, 191, - 183, 176, nil, nil, nil, 192, 199, 194, 193, 186, - 196, 181, 169, 188, 187, nil, nil, nil, nil, nil, - 168, 175, 166, 167, 163, 164, 165, 124, 126, nil, - nil, 125, nil, nil, nil, nil, nil, nil, nil, nil, - 157, 158, nil, 154, 136, 137, 138, 145, 142, 144, - nil, nil, 139, 140, nil, nil, nil, 159, 160, 146, - 147, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 151, 150, nil, 135, 156, 153, - 152, 161, 148, 149, 143, 141, 133, 155, 134, nil, - nil, 162, 89, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 88, 173, 184, 174, - 197, 170, 190, 180, 179, 200, 201, 195, 178, 177, - 172, 198, 202, 203, 182, 171, 185, 189, 191, 183, - 176, nil, nil, nil, 192, 199, 194, 371, 370, 372, - 369, 169, 188, 187, nil, nil, nil, nil, nil, 168, - 175, 166, 167, 366, 367, 368, 364, 126, 97, 96, - 365, nil, 99, nil, nil, nil, nil, nil, nil, 157, - 158, nil, 154, 136, 137, 138, 145, 142, 144, nil, - nil, 139, 140, nil, nil, nil, 159, 160, 146, 147, - nil, nil, nil, nil, nil, 376, nil, nil, nil, nil, - nil, nil, nil, 151, 150, nil, 135, 156, 153, 152, - 161, 148, 149, 143, 141, 133, 155, 134, nil, nil, - 162, 173, 184, 174, 197, 170, 190, 180, 179, 200, - 201, 195, 178, 177, 172, 198, 202, 203, 182, 171, - 185, 189, 191, 183, 176, nil, nil, nil, 192, 199, - 194, 193, 186, 196, 181, 169, 188, 187, nil, nil, - nil, nil, nil, 168, 175, 166, 167, 163, 164, 165, - 124, 126, nil, nil, 125, nil, nil, nil, nil, nil, - nil, nil, nil, 157, 158, nil, 154, 136, 137, 138, - 145, 142, 144, nil, nil, 139, 140, nil, nil, nil, - 159, 160, 146, 147, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 151, 150, nil, - 135, 156, 153, 152, 161, 148, 149, 143, 141, 133, - 155, 134, 413, 417, 162, nil, 414, nil, nil, nil, - nil, nil, nil, nil, nil, 157, 158, nil, 154, 136, - 137, 138, 145, 142, 144, nil, nil, 139, 140, nil, - nil, nil, 159, 160, 146, 147, nil, nil, nil, nil, - nil, 263, nil, nil, nil, nil, nil, nil, nil, 151, - 150, nil, 135, 156, 153, 152, 161, 148, 149, 143, - 141, 133, 155, 134, 420, 424, 162, nil, 419, nil, - nil, nil, nil, nil, nil, nil, nil, 157, 158, nil, - 154, 136, 137, 138, 145, 142, 144, nil, nil, 139, - 140, nil, nil, nil, 159, 160, 146, 147, nil, nil, - nil, nil, nil, 263, nil, nil, nil, nil, nil, nil, - nil, 151, 150, nil, 135, 156, 153, 152, 161, 148, - 149, 143, 141, 133, 155, 134, 475, 417, 162, nil, - 476, nil, nil, nil, nil, nil, nil, nil, nil, 157, - 158, nil, 154, 136, 137, 138, 145, 142, 144, nil, - nil, 139, 140, nil, nil, nil, 159, 160, 146, 147, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 151, 150, nil, 135, 156, 153, 152, - 161, 148, 149, 143, 141, 133, 155, 134, 638, 417, - 162, nil, 639, nil, nil, nil, nil, nil, nil, nil, - nil, 157, 158, nil, 154, 136, 137, 138, 145, 142, - 144, nil, nil, 139, 140, nil, nil, nil, 159, 160, - 146, 147, nil, nil, nil, nil, nil, 263, nil, nil, - nil, nil, nil, nil, nil, 151, 150, nil, 135, 156, - 153, 152, 161, 148, 149, 143, 141, 133, 155, 134, - 640, 424, 162, nil, 641, nil, nil, nil, nil, nil, - nil, nil, nil, 157, 158, nil, 154, 136, 137, 138, - 145, 142, 144, nil, nil, 139, 140, nil, nil, nil, - 159, 160, 146, 147, nil, nil, nil, nil, nil, 263, - nil, nil, nil, nil, nil, nil, nil, 151, 150, nil, - 135, 156, 153, 152, 161, 148, 149, 143, 141, 133, - 155, 134, 670, 417, 162, nil, 671, nil, nil, nil, - nil, nil, nil, nil, nil, 157, 158, nil, 154, 136, - 137, 138, 145, 142, 144, nil, nil, 139, 140, nil, - nil, nil, 159, 160, 146, 147, nil, nil, nil, nil, - nil, 263, nil, nil, nil, nil, nil, nil, nil, 151, - 150, nil, 135, 156, 153, 152, 161, 148, 149, 143, - 141, 133, 155, 134, 673, 424, 162, nil, 674, nil, - nil, nil, nil, nil, nil, nil, nil, 157, 158, nil, - 154, 136, 137, 138, 145, 142, 144, nil, nil, 139, - 140, nil, nil, nil, 159, 160, 146, 147, nil, nil, - nil, nil, nil, 263, nil, nil, nil, nil, nil, nil, - nil, 151, 150, nil, 135, 156, 153, 152, 161, 148, - 149, 143, 141, 133, 155, 134, 638, 417, 162, nil, - 639, nil, nil, nil, nil, nil, nil, nil, nil, 157, - 158, nil, 154, 136, 137, 138, 145, 142, 144, nil, - nil, 139, 140, nil, nil, nil, 159, 160, 146, 147, - nil, nil, nil, nil, nil, 263, nil, nil, nil, nil, - nil, nil, nil, 151, 150, nil, 135, 156, 153, 152, - 161, 148, 149, 143, 141, 133, 155, 134, 640, 424, - 162, nil, 641, nil, nil, nil, nil, nil, nil, nil, - nil, 157, 158, nil, 154, 136, 137, 138, 145, 142, - 144, nil, nil, 139, 140, nil, nil, nil, 159, 160, - 146, 147, nil, nil, nil, nil, nil, 263, nil, nil, - nil, nil, nil, nil, nil, 151, 150, nil, 135, 156, - 153, 152, 161, 148, 149, 143, 141, 133, 155, 134, - 721, 417, 162, nil, 722, nil, nil, nil, nil, nil, - nil, nil, nil, 157, 158, nil, 154, 136, 137, 138, - 145, 142, 144, nil, nil, 139, 140, nil, nil, nil, - 159, 160, 146, 147, nil, nil, nil, nil, nil, 263, - nil, nil, nil, nil, nil, nil, nil, 151, 150, nil, - 135, 156, 153, 152, 161, 148, 149, 143, 141, 133, - 155, 134, 723, 424, 162, nil, 724, nil, nil, nil, - nil, nil, nil, nil, nil, 157, 158, nil, 154, 136, - 137, 138, 145, 142, 144, nil, nil, 139, 140, nil, - nil, nil, 159, 160, 146, 147, nil, nil, nil, nil, - nil, 263, nil, nil, nil, nil, nil, nil, nil, 151, - 150, nil, 135, 156, 153, 152, 161, 148, 149, 143, - 141, 133, 155, 134, 726, 424, 162, nil, 727, nil, - nil, nil, nil, nil, nil, nil, nil, 157, 158, nil, - 154, 136, 137, 138, 145, 142, 144, nil, nil, 139, - 140, nil, nil, nil, 159, 160, 146, 147, nil, nil, - nil, nil, nil, 263, nil, nil, nil, nil, nil, nil, - nil, 151, 150, nil, 135, 156, 153, 152, 161, 148, - 149, 143, 141, 133, 155, 134, 475, 417, 162, nil, - 476, nil, nil, nil, nil, nil, nil, nil, nil, 157, - 158, nil, 154, 136, 137, 138, 145, 142, 144, nil, - nil, 139, 140, nil, nil, nil, 159, 160, 146, 147, - nil, nil, nil, nil, nil, 263, nil, nil, nil, nil, - nil, nil, nil, 151, 150, nil, 135, 156, 153, 152, - 161, 148, 149, 143, 141, 133, 155, 134, 983, 424, - 162, nil, 982, nil, nil, nil, nil, nil, nil, nil, - nil, 157, 158, nil, 154, 136, 137, 138, 145, 142, - 144, nil, nil, 139, 140, nil, nil, nil, 159, 160, - 146, 147, nil, nil, nil, nil, nil, 263, nil, nil, - nil, nil, nil, nil, nil, 151, 150, nil, 135, 156, - 153, 152, 161, 148, 149, 143, 141, 133, 155, 134, - 1006, 417, 162, nil, 1007, nil, nil, nil, nil, nil, - nil, nil, nil, 157, 158, nil, 154, 136, 137, 138, - 145, 142, 144, nil, nil, 139, 140, nil, nil, nil, - 159, 160, 146, 147, nil, nil, nil, nil, nil, 263, - nil, nil, nil, nil, nil, nil, nil, 151, 150, nil, - 135, 156, 153, 152, 161, 148, 149, 143, 141, 133, - 155, 134, 1008, 424, 162, nil, 1009, nil, nil, nil, - nil, nil, nil, nil, nil, 157, 158, nil, 154, 136, - 137, 138, 145, 142, 144, nil, nil, 139, 140, nil, - nil, nil, 159, 160, 146, 147, nil, nil, nil, nil, - nil, 263, nil, nil, nil, nil, nil, nil, nil, 151, - 150, nil, 135, 156, 153, 152, 161, 148, 149, 143, - 141, 133, 155, 134, nil, 548, 162, 545, 544, 543, - 553, 546, nil, 548, nil, 545, 544, 543, 553, 546, - nil, 556, nil, nil, nil, nil, nil, nil, 548, 556, - 545, 544, 543, 553, 546, nil, nil, nil, nil, nil, - nil, nil, nil, 551, 556, nil, nil, nil, nil, nil, - nil, 551, 561, 560, 564, 563, nil, nil, nil, 557, - 561, 560, 564, 563, nil, nil, 551, 557, 548, nil, - 545, 544, 543, 553, 546, 561, 560, 564, 563, nil, - nil, nil, 557, 548, 556, 545, 544, 543, 553, 546, - nil, 548, nil, 545, 544, 543, 553, 546, nil, 556, - nil, nil, nil, nil, nil, nil, 551, 556, 548, nil, - 545, 544, 543, 553, 546, 561, 560, 564, 563, nil, - nil, 551, 557, nil, 556, nil, nil, nil, nil, 551, - 561, 560, 564, 563, nil, nil, nil, 557, 561, 560, - 564, 563, nil, nil, nil, 557, 551, 548, nil, 545, - 544, 543, 553, 546, nil, 561, 560, 564, 563, nil, - nil, nil, 557, 556, 548, nil, 545, 544, 543, 553, - 546, nil, 548, nil, 545, 544, 543, 553, 546, nil, - 556, nil, nil, nil, nil, 551, nil, 548, 556, 545, - 544, 543, 553, 546, nil, nil, 564, 563, nil, nil, - nil, 557, 551, 556, nil, nil, nil, nil, nil, nil, - 551, nil, nil, 564, 563, nil, nil, nil, 557, 561, - 560, 564, 563, nil, nil, 551, 557, 548, nil, 545, - 544, 543, 553, 546, nil, nil, 564, 563, nil, nil, - nil, 557, 548, 556, 545, 544, 543, 553, 546, nil, - 548, nil, 545, 544, 543, 553, 546, 548, 556, 545, - 544, 543, 553, 546, nil, 551, 556, nil, nil, nil, - nil, nil, nil, 556, nil, nil, 564, 563, nil, nil, - 551, 557, nil, nil, nil, nil, nil, nil, 551, nil, - nil, 564, 563, nil, nil, 551, 557, nil, nil, 564, - 563, nil, nil, nil, 557, nil, 564, 563, nil, nil, - nil, 557 ] - -racc_action_check = [ - 95, 345, 61, 437, 437, 346, 349, 95, 95, 95, - 221, 338, 95, 95, 95, 383, 95, 355, 19, 384, - 58, 355, 594, 594, 95, 222, 95, 95, 95, 473, - 650, 26, 17, 17, 578, 359, 95, 95, 339, 95, - 95, 95, 95, 95, 719, 885, 15, 1, 908, 687, - 721, 7, 1006, 665, 1007, 1020, 680, 680, 308, 19, - 58, 913, 665, 913, 473, 722, 221, 95, 95, 95, - 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, - 95, 222, 383, 95, 95, 95, 384, 95, 95, 570, - 61, 95, 10, 15, 95, 95, 26, 95, 437, 95, - 12, 95, 15, 95, 95, 844, 95, 95, 95, 95, - 95, 345, 95, 98, 95, 346, 349, 594, 650, 26, - 98, 98, 98, 308, 1008, 98, 98, 98, 95, 98, - 338, 95, 95, 95, 95, 338, 95, 98, 95, 98, - 98, 98, 359, 95, 578, 571, 308, 723, 845, 98, - 98, 680, 98, 98, 98, 98, 98, 339, 13, 687, - 721, 670, 339, 719, 885, 359, 719, 908, 719, 885, - 359, 1006, 908, 1007, 1020, 722, 1006, 16, 1007, 1020, - 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, - 98, 98, 98, 98, 570, 22, 98, 98, 98, 570, - 98, 98, 1008, 671, 98, 37, 724, 98, 98, 40, - 98, 605, 98, 723, 98, 844, 98, 98, 224, 98, - 98, 98, 98, 98, 419, 98, 45, 98, 670, 590, - 590, 419, 419, 419, 481, 24, 328, 419, 419, 328, - 419, 98, 24, 1008, 98, 98, 98, 98, 1008, 98, - 571, 98, 353, 845, 3, 571, 98, 723, 845, 3, - 419, 419, 109, 419, 419, 419, 419, 419, 670, 481, - 671, 670, 724, 123, 224, 204, 605, 605, 123, 123, - 670, 704, 607, 704, 704, 704, 605, 704, 223, 41, - 41, 419, 419, 419, 419, 419, 419, 419, 419, 419, - 419, 419, 419, 419, 419, 353, 354, 419, 419, 419, - 671, 419, 353, 671, 38, 419, 724, 353, 419, 313, - 313, 353, 671, 419, 590, 419, 443, 419, 419, 590, - 419, 419, 419, 419, 419, 378, 419, 420, 419, 225, - 353, 39, 364, 226, 420, 420, 420, 607, 607, 364, - 420, 420, 419, 420, 482, 419, 419, 607, 419, 354, - 419, 38, 420, 230, 704, 673, 354, 419, 41, 41, - 38, 354, 262, 420, 420, 354, 420, 420, 420, 420, - 420, 904, 443, 904, 904, 904, 317, 904, 39, 482, - 329, 651, 492, 329, 354, 379, 276, 39, 313, 313, - 378, 378, 378, 801, 420, 420, 420, 420, 420, 420, - 420, 420, 420, 420, 420, 420, 420, 420, 673, 413, - 420, 420, 420, 380, 420, 673, 651, 288, 420, 414, - 673, 420, 288, 317, 673, 381, 420, 638, 420, 726, - 420, 420, 317, 420, 420, 420, 420, 420, 277, 420, - 420, 420, 382, 673, 280, 385, 801, 492, 492, 492, - 379, 379, 379, 801, 904, 420, 413, 621, 420, 420, - 640, 420, 801, 420, 492, 413, 414, 640, 640, 640, - 420, 292, 640, 640, 640, 414, 640, 365, 380, 380, - 380, 801, 726, 638, 365, 640, 640, 640, 640, 726, - 381, 381, 381, 639, 726, 293, 640, 640, 726, 640, - 640, 640, 640, 640, 621, 295, 774, 382, 382, 382, - 385, 385, 385, 621, 337, 337, 366, 726, 551, 367, - 551, 551, 551, 366, 551, 296, 367, 640, 640, 640, - 640, 640, 640, 640, 640, 640, 640, 640, 640, 640, - 640, 689, 297, 640, 640, 640, 368, 640, 640, 639, - 303, 640, 689, 368, 640, 640, 551, 640, 306, 640, - 307, 640, 774, 640, 640, 551, 640, 640, 640, 640, - 640, 862, 640, 640, 640, 332, 369, 77, 332, 342, - 370, 312, 862, 369, 342, 689, 689, 370, 640, 77, - 689, 640, 640, 640, 640, 449, 640, 641, 640, 77, - 371, 14, 314, 640, 641, 641, 641, 371, 14, 641, - 641, 641, 46, 641, 220, 862, 862, 14, 318, 46, - 862, 220, 372, 641, 641, 641, 321, 449, 46, 372, - 220, 449, 449, 641, 641, 374, 641, 641, 641, 641, - 641, 833, 374, 833, 833, 833, 300, 833, 701, 326, - 701, 701, 701, 300, 701, 831, 330, 831, 831, 831, - 686, 831, 300, 686, 641, 641, 641, 641, 641, 641, - 641, 641, 641, 641, 641, 641, 641, 641, 468, 833, - 641, 641, 641, 301, 641, 641, 701, 469, 641, 331, - 301, 641, 641, 831, 641, 701, 641, 333, 641, 301, - 641, 641, 831, 641, 641, 641, 641, 641, 589, 641, - 468, 641, 343, 589, 468, 468, 450, 468, 468, 469, - 523, 523, 344, 469, 469, 641, 469, 469, 641, 641, - 641, 641, 848, 641, 853, 641, 348, 848, 350, 853, - 641, 0, 0, 0, 0, 0, 0, 394, 450, 302, - 0, 0, 450, 450, 400, 0, 302, 0, 0, 0, - 0, 0, 0, 0, 934, 302, 403, 934, 405, 0, - 0, 0, 0, 0, 0, 0, 598, 598, 0, 409, - 598, 598, 598, 432, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 411, 0, 0, 0, - 412, 0, 0, 421, 0, 0, 0, 432, 432, 432, - 432, 432, 432, 432, 432, 432, 432, 432, 304, 432, - 432, 319, 429, 432, 432, 304, 0, 439, 319, 0, - 692, 692, 0, 0, 304, 451, 0, 319, 0, 432, - 452, 432, 0, 432, 432, 453, 432, 432, 432, 432, - 432, 0, 432, 710, 710, 454, 0, 0, 0, 0, - 347, 0, 0, 0, 0, 996, 996, 347, 479, 0, - 0, 483, 432, 499, 432, 500, 347, 0, 503, 0, - 0, 0, 33, 33, 33, 33, 33, 33, 505, 510, - 357, 33, 33, 513, 521, 522, 33, 357, 33, 33, - 33, 33, 33, 33, 33, 524, 357, 536, 537, 539, - 33, 33, 33, 33, 33, 33, 33, 540, 541, 33, - 550, 558, 562, 565, 408, 33, 33, 33, 33, 33, - 33, 33, 33, 33, 33, 33, 33, 567, 33, 33, - 33, 572, 33, 33, 573, 33, 33, 33, 408, 408, - 408, 408, 408, 408, 408, 408, 408, 408, 408, 509, - 408, 408, 581, 592, 408, 408, 509, 33, 602, 581, - 33, 610, 612, 33, 33, 509, 618, 33, 581, 33, - 408, 622, 408, 33, 408, 408, 627, 408, 408, 408, - 408, 408, 33, 408, 632, 642, 649, 33, 33, 33, - 33, 875, 33, 33, 33, 33, 656, 658, 875, 664, - 33, 33, 667, 408, 669, 672, 675, 875, 33, 676, - 33, 33, 33, 121, 121, 121, 121, 121, 121, 679, - 681, 938, 121, 121, 684, 688, 703, 121, 938, 121, - 121, 121, 121, 121, 121, 121, 705, 938, 712, 717, - 720, 121, 121, 121, 121, 121, 121, 121, 729, 734, - 121, 753, 758, 775, 776, 643, 121, 121, 121, 121, - 121, 121, 121, 121, 121, 121, 121, 121, 777, 121, - 121, 121, 779, 121, 121, 780, 121, 121, 121, 643, - 643, 643, 643, 643, 643, 643, 643, 643, 643, 643, - 674, 643, 643, 944, 781, 643, 643, 674, 121, 783, - 944, 121, 674, 784, 121, 121, 674, 785, 121, 944, - 121, 643, 786, 643, 121, 643, 643, 790, 643, 643, - 643, 643, 643, 121, 643, 794, 795, 800, 121, 121, - 121, 121, 945, 121, 121, 121, 121, 804, 807, 945, - 808, 121, 121, 811, 643, 816, 817, 821, 945, 121, - 822, 121, 121, 121, 206, 206, 206, 206, 206, 206, - 824, 825, 946, 206, 206, 827, 830, 832, 206, 946, - 206, 206, 206, 206, 206, 206, 206, 835, 946, 838, - 847, 851, 206, 206, 206, 206, 206, 206, 206, 852, - 873, 206, 873, 873, 873, 855, 873, 206, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 856, - 206, 206, 206, 872, 206, 206, 876, 206, 206, 206, - 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, - 21, 727, 21, 21, 948, 878, 21, 21, 727, 206, - 889, 948, 206, 727, 890, 206, 206, 727, 906, 206, - 948, 206, 21, 910, 21, 206, 21, 21, 911, 21, - 21, 21, 21, 21, 206, 21, 917, 921, 924, 206, - 206, 206, 206, 988, 206, 206, 206, 206, 927, 928, - 988, 929, 206, 206, 930, 21, 932, 947, 952, 988, - 206, 953, 206, 206, 206, 229, 229, 229, 229, 229, - 229, 954, 955, 956, 229, 229, 958, 982, 983, 229, - 984, 229, 229, 229, 229, 229, 229, 229, 6, 6, - 6, 6, 6, 229, 229, 229, 229, 229, 229, 229, - 995, 981, 229, 981, 981, 981, 997, 981, 229, 229, - 229, 229, 229, 229, 229, 229, 229, 229, 229, 229, - 998, 229, 229, 229, 999, 229, 229, 1000, 229, 229, - 229, 274, 274, 274, 274, 274, 274, 274, 274, 274, - 274, 274, 1009, 274, 274, 1001, 1002, 274, 274, 1009, - 229, 1005, 1010, 229, 1009, 1011, 229, 229, 1009, 1022, - 229, nil, 229, 274, nil, 274, 229, 274, 274, nil, - 274, 274, 274, 274, 274, 229, 274, nil, nil, nil, - 229, 229, 229, 229, nil, 229, 229, 229, 229, nil, - nil, nil, nil, 229, 229, nil, 274, nil, nil, nil, - nil, 229, nil, 229, 229, 229, 294, 294, 294, 294, - 294, 294, nil, nil, nil, 294, 294, nil, nil, nil, - 294, nil, 294, 294, 294, 294, 294, 294, 294, 291, - 291, 291, 291, 291, 294, 294, 294, 294, 294, 294, - 294, nil, nil, 294, 497, 497, 497, 497, 497, 294, - 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, - 294, nil, 294, 294, 294, nil, 294, 294, nil, 294, - 294, 294, 427, 427, 427, 427, 427, 427, 427, 427, - 427, 427, 427, nil, 427, 427, nil, nil, 427, 427, - nil, 294, nil, nil, 294, nil, nil, 294, 294, nil, - nil, 294, nil, 294, 427, nil, 427, 294, 427, 427, - nil, 427, 427, 427, 427, 427, 294, 427, nil, nil, - nil, 294, 294, 294, 294, nil, 294, 294, 294, 294, - nil, nil, nil, nil, 294, 294, nil, 427, nil, nil, - nil, nil, 294, nil, 294, 294, 294, 299, 299, 299, - 299, 299, 299, nil, nil, nil, 299, 299, nil, nil, - nil, 299, nil, 299, 299, 299, 299, 299, 299, 299, - nil, nil, nil, nil, nil, 299, 299, 299, 299, 299, - 299, 299, nil, nil, 299, nil, nil, nil, nil, nil, - 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, - 299, 299, nil, 299, 299, 299, nil, 299, 299, nil, - 299, 299, 299, 519, 519, 519, 519, 519, 519, 519, - 519, 519, 519, 519, nil, 519, 519, nil, nil, 519, - 519, nil, 299, nil, nil, 299, nil, nil, 299, 299, - nil, nil, 299, nil, 299, 519, nil, 519, 299, 519, - 519, nil, 519, 519, 519, 519, 519, 299, 519, nil, - nil, nil, 299, 299, 299, 299, nil, 299, 299, 299, - 299, nil, nil, nil, nil, 299, 299, nil, 519, nil, - nil, nil, nil, 299, nil, 299, 299, 299, 324, 324, - 324, 324, 324, 324, nil, nil, nil, 324, 324, nil, - nil, nil, 324, nil, 324, 324, 324, 324, 324, 324, - 324, nil, nil, nil, nil, nil, 324, 324, 324, 324, - 324, 324, 324, nil, nil, 324, nil, nil, nil, nil, - nil, 324, 324, 324, 324, 324, 324, 324, 324, 324, - 324, 324, 324, nil, 324, 324, 324, nil, 324, 324, - nil, 324, 324, 324, 644, 644, 644, 644, 644, 644, - 644, 644, 644, 644, 644, nil, 644, 644, nil, nil, - 644, 644, nil, 324, nil, nil, 324, nil, nil, 324, - 324, nil, nil, 324, nil, 324, 644, nil, 644, 324, - 644, 644, nil, 644, 644, 644, 644, 644, 324, 644, - nil, nil, nil, 324, 324, 324, 324, nil, 324, 324, - 324, 324, nil, nil, nil, nil, 324, 324, 644, 644, - nil, nil, nil, nil, 324, nil, 324, 324, 324, 498, - 498, 498, 498, 498, 498, nil, nil, nil, 498, 498, - nil, nil, nil, 498, nil, 498, 498, 498, 498, 498, - 498, 498, nil, nil, nil, nil, nil, 498, 498, 498, - 498, 498, 498, 498, nil, nil, 498, nil, nil, nil, - nil, nil, 498, 498, 498, 498, 498, 498, 498, 498, - 498, 498, 498, 498, nil, 498, 498, 498, nil, 498, - 498, nil, 498, 498, 498, 678, 678, 678, 678, 678, - 678, 678, 678, 678, 678, 678, nil, 678, 678, nil, - nil, 678, 678, nil, 498, nil, nil, 498, nil, nil, - 498, 498, nil, nil, 498, nil, 498, 678, nil, 678, - 498, 678, 678, nil, 678, 678, 678, 678, 678, 498, - 678, nil, nil, nil, 498, 498, 498, 498, nil, 498, - 498, 498, 498, nil, nil, nil, nil, 498, 498, nil, - 678, nil, nil, nil, nil, 498, nil, 498, 498, 498, - 566, 566, 566, 566, 566, 566, nil, nil, nil, 566, - 566, nil, nil, nil, 566, nil, 566, 566, 566, 566, - 566, 566, 566, nil, nil, nil, nil, nil, 566, 566, - 566, 566, 566, 566, 566, nil, nil, 566, nil, nil, - nil, nil, nil, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, nil, 566, 566, 566, nil, - 566, 566, nil, 566, 566, 566, 755, 755, 755, 755, - 755, 755, 755, 755, 755, 755, 755, nil, 755, 755, - nil, nil, 755, 755, nil, 566, nil, nil, 566, nil, - nil, 566, 566, nil, nil, 566, nil, 566, 755, nil, - 755, 566, 755, 755, nil, 755, 755, 755, 755, 755, - 566, 755, nil, nil, nil, 566, 566, 566, 566, nil, - 566, 566, 566, 566, nil, nil, nil, nil, 566, 566, - nil, 755, nil, nil, nil, nil, 566, nil, 566, 566, - 566, 569, 569, 569, 569, 569, 569, nil, nil, nil, - 569, 569, nil, nil, nil, 569, nil, 569, 569, 569, - 569, 569, 569, 569, nil, nil, nil, nil, nil, 569, - 569, 569, 569, 569, 569, 569, nil, nil, 569, nil, - nil, nil, nil, nil, 569, 569, 569, 569, 569, 569, - 569, 569, 569, 569, 569, 569, nil, 569, 569, 569, - nil, 569, 569, nil, 569, 569, 569, 760, 760, 760, - 760, 760, 760, 760, 760, 760, 760, 760, nil, 760, - 760, nil, nil, 760, 760, nil, 569, nil, nil, 569, - nil, nil, 569, 569, nil, nil, 569, nil, 569, 760, - nil, 760, 569, 760, 760, nil, 760, 760, 760, 760, - 760, 569, 760, nil, nil, nil, 569, 569, 569, 569, - nil, 569, 569, 569, 569, nil, nil, nil, nil, 569, - 569, nil, 760, nil, nil, nil, nil, 569, nil, 569, - 569, 569, 591, 591, 591, 591, 591, 591, nil, nil, - nil, 591, 591, nil, nil, nil, 591, nil, 591, 591, - 591, 591, 591, 591, 591, nil, nil, nil, nil, nil, - 591, 591, 591, 591, 591, 591, 591, nil, nil, 591, - nil, nil, nil, nil, nil, 591, 591, 591, 591, 591, - 591, 591, 591, 591, 591, 591, 591, nil, 591, 591, - 591, nil, 591, 591, nil, 591, 591, 591, 762, 762, - 762, 762, 762, 762, 762, 762, 762, 762, 762, nil, - 762, 762, nil, nil, 762, 762, nil, 591, nil, nil, - 591, nil, nil, 591, 591, nil, nil, 591, nil, 591, - 762, nil, 762, 591, 762, 762, nil, 762, 762, 762, - 762, 762, 591, 762, nil, nil, nil, 591, 591, 591, - 591, nil, 591, 591, 591, 591, nil, nil, nil, nil, - 591, 591, nil, 762, nil, nil, nil, nil, 591, nil, - 591, 591, 591, 648, 648, 648, 648, 648, 648, nil, - nil, nil, 648, 648, nil, nil, nil, 648, nil, 648, - 648, 648, 648, 648, 648, 648, nil, nil, nil, nil, - nil, 648, 648, 648, 648, 648, 648, 648, nil, nil, - 648, nil, nil, nil, nil, nil, 648, 648, 648, 648, - 648, 648, 648, 648, 648, 648, 648, 648, nil, 648, - 648, 648, nil, 648, 648, nil, 648, 648, 648, 765, - 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, - nil, 765, 765, nil, nil, 765, 765, nil, 648, nil, - nil, 648, nil, nil, 648, 648, nil, nil, 648, nil, - 648, 765, nil, 765, 648, 765, 765, nil, 765, 765, - 765, 765, 765, 648, 765, nil, nil, nil, 648, 648, - 648, 648, nil, 648, 648, 648, 648, nil, nil, nil, - nil, 648, 648, nil, 765, nil, nil, nil, nil, 648, - nil, 648, 648, 648, 653, 653, 653, 653, 653, 653, - nil, nil, nil, 653, 653, nil, nil, nil, 653, nil, - 653, 653, 653, 653, 653, 653, 653, nil, nil, nil, - nil, nil, 653, 653, 653, 653, 653, 653, 653, nil, - nil, 653, nil, nil, nil, nil, nil, 653, 653, 653, - 653, 653, 653, 653, 653, 653, 653, 653, 653, nil, - 653, 653, 653, nil, 653, 653, nil, 653, 653, 653, - 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, - 767, nil, 767, 767, nil, nil, 767, 767, nil, 653, - nil, nil, 653, nil, nil, 653, 653, nil, nil, 653, - nil, 653, 767, nil, 767, 653, 767, 767, nil, 767, - 767, 767, 767, 767, 653, 767, nil, nil, nil, 653, - 653, 653, 653, nil, 653, 653, 653, 653, nil, nil, - nil, nil, 653, 653, nil, 767, nil, nil, nil, nil, - 653, nil, 653, 653, 653, 654, 654, 654, 654, 654, - 654, nil, nil, nil, 654, 654, nil, nil, nil, 654, - nil, 654, 654, 654, 654, 654, 654, 654, nil, nil, - nil, nil, nil, 654, 654, 654, 654, 654, 654, 654, - nil, nil, 654, nil, nil, nil, nil, nil, 654, 654, - 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, - nil, 654, 654, 654, nil, 654, 654, nil, 654, 654, - 654, 769, 769, 769, 769, 769, 769, 769, 769, 769, - 769, 769, nil, 769, 769, nil, nil, 769, 769, nil, - 654, nil, nil, 654, nil, nil, 654, 654, nil, nil, - 654, nil, 654, 769, nil, 769, 654, 769, 769, nil, - 769, 769, 769, 769, 769, 654, 769, nil, nil, nil, - 654, 654, 654, 654, nil, 654, 654, 654, 654, nil, - nil, nil, nil, 654, 654, nil, 769, nil, nil, nil, - nil, 654, nil, 654, 654, 654, 730, 730, 730, 730, - 730, 730, nil, nil, nil, 730, 730, nil, nil, nil, - 730, nil, 730, 730, 730, 730, 730, 730, 730, nil, - nil, nil, nil, nil, 730, 730, 730, 730, 730, 730, - 730, nil, nil, 730, nil, nil, nil, nil, nil, 730, - 730, 730, 730, 730, 730, 730, 730, 730, 730, 730, - 730, nil, 730, 730, 730, nil, 730, 730, nil, 730, - 730, 730, 858, 858, 858, 858, 858, 858, 858, 858, - 858, 858, 858, nil, 858, 858, nil, nil, 858, 858, - nil, 730, nil, nil, 730, nil, nil, 730, 730, nil, - nil, 730, nil, 730, 858, nil, 858, 730, 858, 858, - nil, 858, 858, 858, 858, 858, 730, 858, nil, nil, - nil, 730, 730, 730, 730, nil, 730, 730, 730, 730, - nil, nil, nil, nil, 730, 730, nil, 858, nil, nil, - nil, nil, 730, nil, 730, 730, 730, 735, 735, 735, - 735, 735, 735, nil, nil, nil, 735, 735, nil, nil, - nil, 735, nil, 735, 735, 735, 735, 735, 735, 735, - nil, nil, nil, nil, nil, 735, 735, 735, 735, 735, - 735, 735, nil, nil, 735, nil, nil, nil, nil, nil, - 735, 735, 735, 735, 735, 735, 735, 735, 735, 735, - 735, 735, nil, 735, 735, 735, nil, 735, 735, nil, - 735, 735, 735, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, nil, 969, 969, nil, nil, 969, - 969, nil, 735, nil, nil, 735, nil, nil, 735, 735, - nil, nil, 735, nil, 735, 969, nil, 969, 735, 969, - 969, nil, 969, 969, 969, 969, 969, 735, 969, nil, - nil, nil, 735, 735, 735, 735, nil, 735, 735, 735, - 735, nil, nil, nil, nil, 735, 735, nil, 969, nil, - nil, nil, nil, 735, nil, 735, 735, 735, 745, 745, - 745, 745, 745, 745, nil, nil, nil, 745, 745, nil, - nil, nil, 745, nil, 745, 745, 745, 745, 745, 745, - 745, nil, nil, nil, nil, nil, 745, 745, 745, 745, - 745, 745, 745, nil, nil, 745, nil, nil, nil, nil, - nil, 745, 745, 745, 745, 745, 745, 745, 745, 745, - 745, 745, 745, nil, 745, 745, 745, nil, 745, 745, - nil, 745, 745, 745, 447, 447, 447, 447, 447, 447, - 447, 447, 447, 447, 447, nil, 447, 447, nil, nil, - 447, 447, nil, 745, nil, nil, 745, nil, nil, 745, - 745, nil, nil, 745, nil, 745, 447, nil, 447, 745, - 447, 447, nil, 447, 447, 447, 447, 447, 745, 447, - nil, nil, nil, 745, 745, 745, 745, nil, 745, 745, - 745, 745, nil, nil, nil, nil, 745, 745, nil, nil, - nil, nil, nil, nil, 745, nil, 745, 745, 745, 793, - 793, 793, 793, 793, 793, nil, nil, nil, 793, 793, - nil, nil, nil, 793, nil, 793, 793, 793, 793, 793, - 793, 793, nil, nil, nil, nil, nil, 793, 793, 793, - 793, 793, 793, 793, nil, nil, 793, nil, nil, nil, - nil, nil, 793, 793, 793, 793, 793, 793, 793, 793, - 793, 793, 793, 793, nil, 793, 793, 793, nil, 793, - 793, nil, 793, 793, 793, 448, 448, 448, 448, 448, - 448, 448, 448, 448, 448, 448, nil, 448, 448, nil, - nil, 448, 448, nil, 793, nil, nil, 793, nil, nil, - 793, 793, nil, nil, 793, nil, 793, 448, nil, 448, - 793, 448, 448, nil, 448, 448, 448, 448, 448, 793, - 448, nil, nil, nil, 793, 793, 793, 793, nil, 793, - 793, 793, 793, nil, nil, nil, nil, 793, 793, nil, - nil, nil, nil, nil, nil, 793, nil, 793, 793, 793, - 806, 806, 806, 806, 806, 806, nil, nil, nil, 806, - 806, nil, nil, nil, 806, nil, 806, 806, 806, 806, - 806, 806, 806, nil, nil, nil, nil, nil, 806, 806, - 806, 806, 806, 806, 806, nil, 905, 806, 905, 905, - 905, nil, 905, 806, 806, 806, 806, 806, 806, 806, - 806, 806, 806, 806, 806, nil, 806, 806, 806, nil, - 806, 806, nil, 806, 806, 806, 458, 458, 458, 458, - 458, 458, 458, nil, 905, 458, 458, nil, nil, nil, - nil, nil, 458, 458, nil, 806, nil, nil, 806, nil, - nil, 806, 806, nil, nil, 806, nil, 806, 458, nil, - 458, 806, 458, 458, nil, 458, 458, 458, 458, 458, - 806, 458, nil, nil, nil, 806, 806, 806, 806, nil, - 806, 806, 806, 806, nil, nil, nil, nil, 806, 806, - nil, nil, nil, nil, nil, nil, 806, nil, 806, 806, - 806, 814, 814, 814, 814, 814, 814, nil, nil, nil, - 814, 814, nil, nil, nil, 814, nil, 814, 814, 814, - 814, 814, 814, 814, nil, nil, nil, nil, nil, 814, - 814, 814, 814, 814, 814, 814, nil, 957, 814, 957, - 957, 957, nil, 957, 814, 814, 814, 814, 814, 814, - 814, 814, 814, 814, 814, 814, nil, 814, 814, 814, - nil, 814, 814, nil, 814, 814, 814, 459, nil, nil, - 959, nil, 959, 959, 959, 957, 959, nil, nil, nil, - nil, nil, nil, 459, 459, nil, 814, nil, nil, 814, - nil, nil, 814, 814, nil, nil, 814, nil, 814, 459, - nil, 459, 814, 459, 459, nil, 459, 459, 959, nil, - 459, 814, 459, nil, nil, nil, 814, 814, 814, 814, - nil, 814, 814, 814, 814, nil, nil, nil, nil, 814, - 814, nil, nil, nil, nil, nil, nil, 814, nil, 814, - 814, 814, 815, 815, 815, 815, 815, 815, nil, nil, - nil, 815, 815, nil, nil, nil, 815, nil, 815, 815, - 815, 815, 815, 815, 815, nil, nil, nil, nil, nil, - 815, 815, 815, 815, 815, 815, 815, nil, 994, 815, - 994, 994, 994, nil, 994, 815, 815, 815, 815, 815, - 815, 815, 815, 815, 815, 815, 815, nil, 815, 815, - 815, nil, 815, 815, nil, 815, 815, 815, 460, nil, - nil, nil, nil, nil, nil, nil, 994, nil, nil, nil, - nil, nil, nil, nil, 460, 460, nil, 815, nil, nil, - 815, nil, nil, 815, 815, nil, nil, 815, nil, 815, - 460, nil, 460, 815, 460, 460, nil, 460, 460, nil, - nil, 460, 815, 460, nil, nil, nil, 815, 815, 815, - 815, nil, 815, 815, 815, 815, nil, nil, nil, nil, - 815, 815, nil, nil, nil, nil, nil, nil, 815, nil, - 815, 815, 815, 839, 839, 839, 839, 839, 839, nil, - nil, nil, 839, 839, nil, nil, nil, 839, nil, 839, - 839, 839, 839, 839, 839, 839, nil, nil, nil, nil, - nil, 839, 839, 839, 839, 839, 839, 839, nil, nil, - 839, nil, nil, nil, nil, nil, 839, 839, 839, 839, - 839, 839, 839, 839, 839, 839, 839, 839, nil, 839, - 839, 839, nil, 839, 839, nil, 839, 839, 839, 461, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 461, 461, nil, 839, nil, - nil, 839, nil, nil, 839, 839, nil, nil, 839, nil, - 839, 461, nil, 461, 839, 461, 461, nil, 461, 461, - nil, nil, 461, 839, 461, nil, nil, nil, 839, 839, - 839, 839, nil, 839, 839, 839, 839, nil, nil, nil, - nil, 839, 839, nil, nil, nil, nil, nil, nil, 839, - nil, 839, 839, 839, 840, 840, 840, 840, 840, 840, - nil, nil, nil, 840, 840, nil, nil, nil, 840, nil, - 840, 840, 840, 840, 840, 840, 840, nil, nil, nil, - nil, nil, 840, 840, 840, 840, 840, 840, 840, nil, - nil, 840, nil, nil, nil, nil, nil, 840, 840, 840, - 840, 840, 840, 840, 840, 840, 840, 840, 840, nil, - 840, 840, 840, nil, 840, 840, nil, 840, 840, 840, - 462, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 462, 462, nil, 840, - nil, nil, 840, nil, nil, 840, 840, nil, nil, 840, - nil, 840, 462, nil, 462, 840, 462, 462, nil, 462, - 462, nil, nil, 462, 840, 462, nil, nil, nil, 840, - 840, 840, 840, nil, 840, 840, 840, 840, nil, nil, - nil, nil, 840, 840, nil, nil, nil, nil, nil, nil, - 840, nil, 840, 840, 840, 843, 843, 843, 843, 843, - 843, nil, nil, nil, 843, 843, nil, nil, nil, 843, - nil, 843, 843, 843, 843, 843, 843, 843, nil, nil, - nil, nil, nil, 843, 843, 843, 843, 843, 843, 843, - nil, nil, 843, nil, nil, nil, nil, nil, 843, 843, - 843, 843, 843, 843, 843, 843, 843, 843, 843, 843, - nil, 843, 843, 843, nil, 843, 843, nil, 843, 843, - 843, 463, 463, 463, 463, 463, 463, 463, nil, nil, - 463, 463, nil, nil, nil, nil, nil, 463, 463, nil, - 843, nil, nil, 843, nil, nil, 843, 843, nil, nil, - 843, nil, 843, 463, nil, 463, 843, 463, 463, nil, - 463, 463, 463, 463, 463, 843, 463, nil, nil, nil, - 843, 843, 843, 843, nil, 843, 843, 843, 843, nil, - nil, nil, nil, 843, 843, nil, nil, nil, nil, nil, - nil, 843, nil, 843, 843, 843, 849, 849, 849, 849, - 849, 849, nil, nil, nil, 849, 849, nil, nil, nil, - 849, nil, 849, 849, 849, 849, 849, 849, 849, nil, - nil, nil, nil, nil, 849, 849, 849, 849, 849, 849, - 849, nil, nil, 849, nil, nil, nil, nil, nil, 849, - 849, 849, 849, 849, 849, 849, 849, 849, 849, 849, - 849, nil, 849, 849, 849, nil, 849, 849, nil, 849, - 849, 849, 464, 464, 464, 464, 464, 464, 464, nil, - nil, 464, 464, nil, nil, nil, nil, nil, 464, 464, - nil, 849, nil, nil, 849, nil, nil, 849, 849, nil, - nil, 849, nil, 849, 464, nil, 464, 849, 464, 464, - nil, 464, 464, 464, 464, 464, 849, 464, nil, nil, - nil, 849, 849, 849, 849, nil, 849, 849, 849, 849, - nil, nil, nil, nil, 849, 849, nil, nil, nil, nil, - nil, nil, 849, nil, 849, 849, 849, 882, 882, 882, - 882, 882, 882, nil, nil, nil, 882, 882, nil, nil, - nil, 882, nil, 882, 882, 882, 882, 882, 882, 882, - nil, nil, nil, nil, nil, 882, 882, 882, 882, 882, - 882, 882, nil, nil, 882, nil, nil, nil, nil, nil, - 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, - 882, 882, nil, 882, 882, 882, nil, 882, 882, nil, - 882, 882, 882, 465, 465, 465, 465, 465, 465, 465, - nil, nil, 465, 465, nil, nil, nil, nil, nil, 465, - 465, nil, 882, nil, nil, 882, nil, nil, 882, 882, - nil, nil, 882, nil, 882, 465, nil, 465, 882, 465, - 465, nil, 465, 465, 465, 465, 465, 882, 465, nil, - nil, nil, 882, 882, 882, 882, nil, 882, 882, 882, - 882, nil, nil, nil, nil, 882, 882, nil, nil, nil, - nil, nil, nil, 882, nil, 882, 882, 882, 943, 943, - 943, 943, 943, 943, nil, nil, nil, 943, 943, nil, - nil, nil, 943, nil, 943, 943, 943, 943, 943, 943, - 943, nil, nil, nil, nil, nil, 943, 943, 943, 943, - 943, 943, 943, nil, nil, 943, nil, nil, nil, nil, - nil, 943, 943, 943, 943, 943, 943, 943, 943, 943, - 943, 943, 943, nil, 943, 943, 943, nil, 943, 943, - nil, 943, 943, 943, 466, 466, 466, 466, 466, 466, - 466, nil, nil, 466, 466, nil, nil, nil, nil, nil, - 466, 466, nil, 943, nil, nil, 943, nil, nil, 943, - 943, nil, nil, 943, nil, 943, 466, nil, 466, 943, - 466, 466, nil, 466, 466, 466, 466, 466, 943, 466, - nil, nil, nil, 943, 943, 943, 943, nil, 943, 943, - 943, 943, nil, nil, nil, nil, 943, 943, nil, nil, - nil, nil, nil, nil, 943, nil, 943, 943, 943, 960, - 960, 960, 960, 960, 960, nil, nil, nil, 960, 960, - nil, nil, nil, 960, nil, 960, 960, 960, 960, 960, - 960, 960, nil, nil, nil, nil, nil, 960, 960, 960, - 960, 960, 960, 960, nil, nil, 960, nil, nil, nil, - nil, nil, 960, 960, 960, 960, 960, 960, 960, 960, - 960, 960, 960, 960, nil, 960, 960, 960, nil, 960, - 960, nil, 960, 960, 960, 467, 467, 467, 467, 467, - 467, 467, nil, nil, 467, 467, nil, nil, nil, nil, - nil, 467, 467, nil, 960, nil, nil, 960, nil, nil, - 960, 960, nil, nil, 960, nil, 960, 467, nil, 467, - 960, 467, 467, nil, 467, 467, 467, 467, 467, 960, - 467, nil, nil, nil, 960, 960, 960, 960, nil, 960, - 960, 960, 960, nil, nil, nil, nil, 960, 960, nil, - nil, nil, nil, nil, nil, 960, nil, 960, 960, 960, - 966, 966, 966, 966, 966, 966, nil, nil, nil, 966, - 966, nil, nil, nil, 966, nil, 966, 966, 966, 966, - 966, 966, 966, nil, nil, nil, nil, nil, 966, 966, - 966, 966, 966, 966, 966, nil, nil, 966, nil, nil, - nil, nil, nil, 966, 966, 966, 966, 966, 966, 966, - 966, 966, 966, 966, 966, nil, 966, 966, 966, nil, - 966, 966, nil, 966, 966, 966, 470, 470, 470, 470, - 470, 470, 470, nil, nil, 470, 470, nil, nil, nil, - nil, nil, 470, 470, nil, 966, nil, nil, 966, nil, - nil, 966, 966, nil, nil, 966, nil, 966, 470, nil, - 470, 966, 470, 470, nil, 470, 470, 470, 470, 470, - 966, 470, nil, nil, nil, 966, 966, 966, 966, nil, - 966, 966, 966, 966, nil, nil, nil, nil, 966, 966, - nil, nil, nil, nil, nil, nil, 966, nil, 966, 966, - 966, 968, 968, 968, 968, 968, 968, nil, nil, nil, - 968, 968, nil, nil, nil, 968, nil, 968, 968, 968, - 968, 968, 968, 968, nil, nil, nil, nil, nil, 968, - 968, 968, 968, 968, 968, 968, nil, nil, 968, nil, - nil, nil, nil, nil, 968, 968, 968, 968, 968, 968, - 968, 968, 968, 968, 968, 968, nil, 968, 968, 968, - nil, 968, 968, nil, 968, 968, 968, 471, 471, 471, - 471, 471, 471, 471, 471, nil, 471, 471, nil, nil, - nil, nil, nil, 471, 471, nil, 968, nil, nil, 968, - nil, nil, 968, 968, nil, nil, 968, nil, 968, 471, - nil, 471, 968, 471, 471, nil, 471, 471, 471, 471, - 471, 968, 471, nil, nil, nil, 968, 968, 968, 968, - nil, 968, 968, 968, 968, nil, nil, nil, nil, 968, - 968, nil, nil, nil, nil, nil, nil, 968, nil, 968, - 968, 968, 5, 5, 5, 5, 5, nil, nil, nil, - 5, 5, nil, nil, nil, 5, nil, 5, 5, 5, - 5, 5, 5, 5, nil, nil, nil, nil, nil, 5, - 5, 5, 5, 5, 5, 5, nil, nil, 5, nil, - nil, nil, nil, nil, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, nil, 5, 5, 5, - nil, 5, 5, nil, 5, 5, 5, 455, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 455, 455, nil, 5, nil, nil, 5, - nil, nil, 5, 5, nil, nil, 5, nil, 5, 455, - nil, 455, 5, 455, 455, nil, 455, 455, nil, nil, - nil, 5, nil, nil, nil, nil, 5, 5, 5, 5, - nil, 5, 5, 5, 5, nil, nil, nil, nil, 5, - 5, nil, nil, nil, 20, 20, 20, 5, 20, 5, - 5, 5, 20, 20, nil, nil, nil, 20, nil, 20, - 20, 20, 20, 20, 20, 20, nil, nil, nil, nil, - nil, 20, 20, 20, 20, 20, 20, 20, nil, nil, - 20, nil, nil, nil, nil, nil, nil, 20, nil, nil, - 20, 20, 20, 20, 20, 20, 20, 20, nil, 20, - 20, 20, nil, 20, 20, nil, 20, 20, 20, 456, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 456, 456, nil, 20, nil, - nil, 20, nil, nil, 20, 20, nil, nil, 20, nil, - nil, 456, nil, 456, 20, 456, 456, nil, 456, 456, - nil, nil, nil, 20, nil, nil, nil, nil, 20, 20, - 20, 20, nil, 20, 20, 20, 20, nil, nil, nil, - nil, 20, 20, nil, nil, nil, 29, 29, 29, 20, - 29, 20, 20, 20, 29, 29, nil, nil, nil, 29, - nil, 29, 29, 29, 29, 29, 29, 29, nil, nil, - nil, nil, nil, 29, 29, 29, 29, 29, 29, 29, - nil, nil, 29, nil, nil, nil, nil, nil, nil, 29, - nil, nil, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, nil, 29, 29, nil, 29, 29, - 29, 457, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 457, 457, nil, - 29, nil, nil, 29, nil, nil, 29, 29, nil, nil, - 29, nil, 29, 457, 29, nil, 29, 457, 457, 29, - 457, 457, nil, nil, nil, 29, nil, nil, nil, nil, - 29, 29, 29, 29, nil, 29, 29, 29, 29, nil, - nil, nil, nil, 29, 29, nil, nil, nil, 30, 30, - 30, 29, 30, 29, 29, 29, 30, 30, nil, nil, - nil, 30, nil, 30, 30, 30, 30, 30, 30, 30, - nil, nil, nil, nil, nil, 30, 30, 30, 30, 30, - 30, 30, nil, nil, 30, nil, nil, nil, nil, nil, - nil, 30, nil, nil, 30, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, nil, 30, 30, nil, - 30, 30, 30, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 30, nil, nil, 30, nil, nil, 30, 30, - nil, nil, 30, nil, 30, nil, 30, nil, 30, nil, - nil, 30, nil, nil, nil, nil, nil, 30, nil, nil, - nil, nil, 30, 30, 30, 30, nil, 30, 30, 30, - 30, nil, nil, nil, nil, 30, 30, nil, nil, nil, - 31, 31, 31, 30, 31, 30, 30, 30, 31, 31, - nil, nil, nil, 31, nil, 31, 31, 31, 31, 31, - 31, 31, nil, nil, nil, nil, nil, 31, 31, 31, - 31, 31, 31, 31, nil, nil, 31, nil, nil, nil, - nil, nil, nil, 31, nil, nil, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 31, nil, 31, - 31, nil, 31, 31, 31, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 31, nil, nil, 31, nil, nil, - 31, 31, nil, nil, 31, nil, 31, nil, 31, nil, - 31, nil, nil, 31, nil, nil, nil, nil, nil, 31, - nil, nil, nil, nil, 31, 31, 31, 31, nil, 31, - 31, 31, 31, nil, nil, nil, nil, 31, 31, nil, - nil, nil, 34, 34, 34, 31, 34, 31, 31, 31, - 34, 34, nil, nil, nil, 34, nil, 34, 34, 34, - 34, 34, 34, 34, nil, nil, nil, nil, nil, 34, - 34, 34, 34, 34, 34, 34, nil, nil, 34, nil, - nil, nil, nil, nil, nil, 34, nil, nil, 34, 34, - 34, 34, 34, 34, 34, 34, nil, 34, 34, 34, - nil, 34, 34, nil, nil, nil, 34, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 34, nil, nil, 34, - nil, nil, 34, 34, nil, nil, 34, nil, 34, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 34, 34, 34, 34, - nil, 34, 34, 34, 34, nil, nil, nil, nil, 34, - 34, nil, nil, nil, 35, 35, 35, 34, 35, 34, - 34, 34, 35, 35, nil, nil, nil, 35, nil, 35, - 35, 35, 35, 35, 35, 35, nil, nil, nil, nil, - nil, 35, 35, 35, 35, 35, 35, 35, nil, nil, - 35, nil, nil, nil, nil, nil, nil, 35, nil, nil, - 35, 35, 35, 35, 35, 35, 35, 35, nil, 35, - 35, 35, nil, 35, 35, nil, nil, nil, 35, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 35, nil, - nil, 35, nil, nil, 35, 35, nil, nil, 35, nil, - 697, nil, 697, 697, 697, 697, 697, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 697, nil, 35, 35, - 35, 35, nil, 35, 35, 35, 35, nil, nil, nil, - nil, 35, 35, nil, nil, nil, 35, nil, 697, 35, - nil, 35, 35, 35, 42, 42, 42, nil, 42, 697, - 697, nil, 42, 42, 697, nil, nil, 42, nil, 42, - 42, 42, 42, 42, 42, 42, nil, nil, nil, nil, - nil, 42, 42, 42, 42, 42, 42, 42, nil, nil, - 42, nil, nil, nil, nil, nil, nil, 42, nil, nil, - 42, 42, 42, 42, 42, 42, 42, 42, nil, 42, - 42, 42, nil, 42, 42, nil, 42, 42, 42, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 42, nil, - nil, 42, nil, nil, 42, 42, nil, nil, 42, nil, - nil, nil, nil, nil, 42, nil, nil, nil, nil, nil, - nil, nil, nil, 42, nil, nil, nil, nil, 42, 42, - 42, 42, nil, 42, 42, 42, 42, nil, nil, nil, - nil, 42, 42, nil, nil, nil, 43, 43, 43, 42, - 43, 42, 42, 42, 43, 43, nil, nil, nil, 43, - nil, 43, 43, 43, 43, 43, 43, 43, nil, nil, - nil, nil, nil, 43, 43, 43, 43, 43, 43, 43, - nil, nil, 43, nil, nil, nil, nil, nil, nil, 43, - nil, nil, 43, 43, 43, 43, 43, 43, 43, 43, - nil, 43, 43, 43, nil, 43, 43, nil, 43, 43, - 43, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 43, nil, nil, 43, nil, nil, 43, 43, nil, nil, - 43, nil, nil, nil, nil, nil, 43, nil, nil, nil, - nil, nil, nil, nil, nil, 43, nil, nil, nil, nil, - 43, 43, 43, 43, nil, 43, 43, 43, 43, nil, - nil, nil, nil, 43, 43, nil, nil, nil, 44, 44, - 44, 43, 44, 43, 43, 43, 44, 44, nil, nil, - nil, 44, nil, 44, 44, 44, 44, 44, 44, 44, - nil, nil, nil, nil, nil, 44, 44, 44, 44, 44, - 44, 44, nil, nil, 44, nil, nil, nil, nil, nil, - nil, 44, nil, nil, 44, 44, 44, 44, 44, 44, - 44, 44, nil, 44, 44, 44, nil, 44, 44, nil, - 44, 44, 44, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 44, nil, nil, 44, nil, nil, 44, 44, - nil, nil, 44, nil, nil, nil, nil, nil, 44, nil, - nil, nil, nil, nil, nil, nil, nil, 44, nil, nil, - nil, nil, 44, 44, 44, 44, nil, 44, 44, 44, - 44, nil, nil, nil, nil, 44, 44, nil, nil, nil, - 59, 59, 59, 44, 59, 44, 44, 44, 59, 59, - nil, nil, nil, 59, nil, 59, 59, 59, 59, 59, - 59, 59, nil, nil, nil, nil, nil, 59, 59, 59, - 59, 59, 59, 59, nil, nil, 59, nil, nil, nil, - nil, nil, nil, 59, nil, nil, 59, 59, 59, 59, - 59, 59, 59, 59, 59, 59, 59, 59, nil, 59, - 59, nil, 59, 59, 59, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 59, nil, nil, 59, nil, nil, - 59, 59, nil, nil, 59, nil, 59, nil, nil, nil, - 59, nil, nil, 59, nil, nil, nil, nil, nil, 59, - nil, nil, nil, nil, 59, 59, 59, 59, nil, 59, - 59, 59, 59, nil, nil, nil, nil, 59, 59, nil, - nil, nil, 60, 60, 60, 59, 60, 59, 59, 59, - 60, 60, nil, nil, nil, 60, nil, 60, 60, 60, - 60, 60, 60, 60, nil, nil, nil, nil, nil, 60, - 60, 60, 60, 60, 60, 60, nil, nil, 60, nil, - nil, nil, nil, nil, nil, 60, nil, nil, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - nil, 60, 60, nil, 60, 60, 60, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 60, nil, nil, 60, - nil, nil, 60, 60, nil, nil, 60, nil, nil, nil, - nil, nil, 60, nil, nil, 60, nil, nil, nil, nil, - nil, 60, nil, nil, nil, nil, 60, 60, 60, 60, - nil, 60, 60, 60, 60, nil, nil, nil, nil, 60, - 60, nil, nil, nil, 63, 63, 63, 60, 63, 60, - 60, 60, 63, 63, nil, nil, nil, 63, nil, 63, - 63, 63, 63, 63, 63, 63, nil, nil, nil, nil, - nil, 63, 63, 63, 63, 63, 63, 63, nil, nil, - 63, nil, nil, nil, nil, nil, nil, 63, nil, nil, - 63, 63, 63, 63, 63, 63, 63, 63, nil, 63, - 63, 63, nil, 63, 63, nil, 63, 63, 63, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 63, nil, - nil, 63, nil, nil, 63, 63, nil, nil, 63, nil, - nil, nil, nil, nil, 63, nil, nil, nil, nil, nil, - nil, nil, nil, 63, nil, nil, nil, nil, 63, 63, - 63, 63, nil, 63, 63, 63, 63, nil, nil, nil, - nil, 63, 63, nil, nil, nil, 64, 64, 64, 63, - 64, 63, 63, 63, 64, 64, nil, nil, nil, 64, - nil, 64, 64, 64, 64, 64, 64, 64, nil, nil, - nil, nil, nil, 64, 64, 64, 64, 64, 64, 64, - nil, nil, 64, nil, nil, nil, nil, nil, nil, 64, - nil, nil, 64, 64, 64, 64, 64, 64, 64, 64, - nil, 64, 64, 64, nil, 64, 64, nil, 64, 64, - 64, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 64, nil, nil, 64, nil, nil, 64, 64, nil, nil, - 64, nil, nil, nil, nil, nil, 64, nil, nil, nil, - nil, nil, nil, nil, nil, 64, nil, nil, nil, nil, - 64, 64, 64, 64, nil, 64, 64, 64, 64, nil, - nil, nil, nil, 64, 64, nil, nil, nil, 67, 67, - 67, 64, 67, 64, 64, 64, 67, 67, nil, nil, - nil, 67, nil, 67, 67, 67, 67, 67, 67, 67, - nil, nil, nil, nil, nil, 67, 67, 67, 67, 67, - 67, 67, nil, nil, 67, nil, nil, nil, nil, nil, - nil, 67, nil, nil, 67, 67, 67, 67, 67, 67, - 67, 67, nil, 67, 67, 67, nil, 67, 67, nil, - 67, 67, 67, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 67, nil, nil, 67, nil, nil, 67, 67, - nil, nil, 67, nil, nil, nil, nil, nil, 67, nil, - nil, nil, nil, nil, nil, nil, nil, 67, nil, nil, - nil, nil, 67, 67, 67, 67, nil, 67, 67, 67, - 67, nil, nil, nil, nil, 67, 67, 67, nil, nil, - nil, nil, 67, 67, nil, 67, 67, 67, 68, 68, - 68, nil, 68, nil, nil, nil, 68, 68, nil, nil, - nil, 68, nil, 68, 68, 68, 68, 68, 68, 68, - nil, nil, nil, nil, nil, 68, 68, 68, 68, 68, - 68, 68, nil, nil, 68, nil, nil, nil, nil, nil, - nil, 68, nil, nil, 68, 68, 68, 68, 68, 68, - 68, 68, nil, 68, 68, 68, nil, 68, 68, nil, - nil, nil, 68, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 68, nil, nil, 68, nil, nil, 68, 68, - nil, nil, 68, nil, 68, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 68, 68, 68, 68, nil, 68, 68, 68, - 68, nil, nil, nil, nil, 68, 68, nil, nil, nil, - 69, 69, 69, 68, 69, 68, 68, 68, 69, 69, - nil, nil, nil, 69, nil, 69, 69, 69, 69, 69, - 69, 69, nil, nil, nil, nil, nil, 69, 69, 69, - 69, 69, 69, 69, nil, nil, 69, nil, nil, nil, - nil, nil, nil, 69, nil, nil, 69, 69, 69, 69, - 69, 69, 69, 69, nil, 69, 69, 69, nil, 69, - 69, nil, nil, nil, 69, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 69, nil, nil, 69, nil, nil, 69, nil, nil, - 69, 69, nil, nil, 69, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 69, 69, 69, 69, nil, 69, - 69, 69, 69, nil, nil, nil, nil, 69, 69, nil, - nil, nil, 70, 70, 70, 69, 70, 69, 69, 69, - 70, 70, nil, nil, nil, 70, nil, 70, 70, 70, - 70, 70, 70, 70, nil, nil, nil, nil, nil, 70, - 70, 70, 70, 70, 70, 70, nil, nil, 70, nil, - nil, nil, nil, nil, nil, 70, nil, nil, 70, 70, - 70, 70, 70, 70, 70, 70, nil, 70, 70, 70, - nil, 70, 70, nil, nil, nil, 70, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 70, nil, nil, 70, - nil, nil, 70, 70, nil, nil, 70, nil, 869, nil, - 869, 869, 869, 869, 869, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 869, nil, 70, 70, 70, 70, - nil, 70, 70, 70, 70, nil, nil, nil, nil, 70, - 70, nil, nil, nil, nil, nil, 869, 70, nil, 70, - 70, 70, 111, 111, 111, 111, 111, 869, 869, nil, - 111, 111, 869, nil, nil, 111, nil, 111, 111, 111, - 111, 111, 111, 111, nil, nil, nil, nil, nil, 111, - 111, 111, 111, 111, 111, 111, nil, nil, 111, nil, - nil, nil, nil, nil, 111, 111, 111, 111, 111, 111, - 111, 111, 111, 111, 111, 111, nil, 111, 111, 111, - nil, 111, 111, nil, 111, 111, 111, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 111, nil, nil, 111, - nil, nil, 111, 111, nil, nil, 111, nil, 111, nil, - nil, nil, 111, nil, nil, nil, nil, nil, nil, nil, - nil, 111, nil, nil, nil, nil, 111, 111, 111, 111, - nil, 111, 111, 111, 111, nil, nil, nil, nil, 111, - 111, nil, nil, nil, nil, nil, 111, 111, nil, 111, - 111, 111, 116, 116, 116, nil, 116, nil, nil, nil, - 116, 116, nil, nil, nil, 116, nil, 116, 116, 116, - 116, 116, 116, 116, nil, nil, nil, nil, nil, 116, - 116, 116, 116, 116, 116, 116, nil, nil, 116, nil, - nil, nil, nil, nil, nil, 116, nil, nil, 116, 116, - 116, 116, 116, 116, 116, 116, nil, 116, 116, 116, - nil, 116, 116, nil, 116, 116, 116, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 116, nil, nil, 116, - nil, nil, 116, 116, nil, nil, 116, nil, nil, nil, - nil, nil, 116, nil, nil, nil, nil, nil, nil, nil, - nil, 116, nil, nil, nil, nil, 116, 116, 116, 116, - nil, 116, 116, 116, 116, nil, nil, nil, nil, 116, - 116, nil, nil, nil, 117, 117, 117, 116, 117, 116, - 116, 116, 117, 117, nil, nil, nil, 117, nil, 117, - 117, 117, 117, 117, 117, 117, nil, nil, nil, nil, - nil, 117, 117, 117, 117, 117, 117, 117, nil, nil, - 117, nil, nil, nil, nil, nil, nil, 117, nil, nil, - 117, 117, 117, 117, 117, 117, 117, 117, nil, 117, - 117, 117, nil, 117, 117, nil, 117, 117, 117, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 117, nil, - nil, 117, nil, nil, 117, 117, nil, nil, 117, nil, - nil, nil, nil, nil, 117, nil, nil, nil, nil, nil, - nil, nil, nil, 117, nil, nil, nil, nil, 117, 117, - 117, 117, nil, 117, 117, 117, 117, nil, nil, nil, - nil, 117, 117, nil, nil, nil, 118, 118, 118, 117, - 118, 117, 117, 117, 118, 118, nil, nil, nil, 118, - nil, 118, 118, 118, 118, 118, 118, 118, nil, nil, - nil, nil, nil, 118, 118, 118, 118, 118, 118, 118, - nil, nil, 118, nil, nil, nil, nil, nil, nil, 118, - nil, nil, 118, 118, 118, 118, 118, 118, 118, 118, - nil, 118, 118, 118, nil, 118, 118, nil, 118, 118, - 118, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 118, nil, nil, 118, nil, nil, 118, 118, nil, nil, - 118, nil, nil, nil, nil, nil, 118, nil, nil, nil, - nil, nil, nil, nil, nil, 118, nil, nil, nil, nil, - 118, 118, 118, 118, nil, 118, 118, 118, 118, nil, - nil, nil, nil, 118, 118, nil, nil, nil, 119, 119, - 119, 118, 119, 118, 118, 118, 119, 119, nil, nil, - nil, 119, nil, 119, 119, 119, 119, 119, 119, 119, - nil, nil, nil, nil, nil, 119, 119, 119, 119, 119, - 119, 119, nil, nil, 119, nil, nil, nil, nil, nil, - nil, 119, nil, nil, 119, 119, 119, 119, 119, 119, - 119, 119, nil, 119, 119, 119, nil, 119, 119, nil, - 119, 119, 119, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 119, nil, nil, 119, nil, nil, 119, 119, - nil, nil, 119, nil, nil, nil, nil, nil, 119, nil, - nil, nil, nil, nil, nil, nil, nil, 119, nil, nil, - nil, nil, 119, 119, 119, 119, nil, 119, 119, 119, - 119, nil, nil, nil, nil, 119, 119, nil, nil, nil, - nil, nil, nil, 119, nil, 119, 119, 119, 120, 120, - 120, 120, 120, nil, nil, nil, 120, 120, nil, nil, - nil, 120, nil, 120, 120, 120, 120, 120, 120, 120, - nil, nil, nil, nil, nil, 120, 120, 120, 120, 120, - 120, 120, nil, nil, 120, nil, nil, nil, nil, nil, - 120, 120, nil, 120, 120, 120, 120, 120, 120, 120, - 120, 120, nil, 120, 120, 120, nil, 120, 120, nil, - 120, 120, 120, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 120, nil, nil, 120, nil, nil, 120, 120, - nil, nil, 120, nil, 120, nil, nil, nil, 120, nil, - nil, nil, nil, nil, nil, nil, nil, 120, nil, nil, - nil, nil, 120, 120, 120, 120, nil, 120, 120, 120, - 120, nil, nil, nil, nil, 120, 120, nil, nil, nil, - 207, 207, 207, 120, 207, 120, 120, 120, 207, 207, - nil, nil, nil, 207, nil, 207, 207, 207, 207, 207, - 207, 207, nil, nil, nil, nil, nil, 207, 207, 207, - 207, 207, 207, 207, nil, nil, 207, nil, nil, nil, - nil, nil, nil, 207, nil, nil, 207, 207, 207, 207, - 207, 207, 207, 207, nil, 207, 207, 207, nil, 207, - 207, nil, 207, 207, 207, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 207, nil, nil, 207, nil, nil, - 207, 207, nil, nil, 207, nil, 207, nil, nil, nil, - 207, nil, nil, nil, nil, nil, nil, nil, nil, 207, - nil, nil, nil, nil, 207, 207, 207, 207, nil, 207, - 207, 207, 207, nil, nil, nil, nil, 207, 207, nil, - nil, nil, 208, 208, 208, 207, 208, 207, 207, 207, - 208, 208, nil, nil, nil, 208, nil, 208, 208, 208, - 208, 208, 208, 208, nil, nil, nil, nil, nil, 208, - 208, 208, 208, 208, 208, 208, nil, nil, 208, nil, - nil, nil, nil, nil, nil, 208, nil, nil, 208, 208, - 208, 208, 208, 208, 208, 208, nil, 208, 208, 208, - nil, 208, 208, nil, 208, 208, 208, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 208, nil, nil, 208, - nil, nil, 208, 208, nil, nil, 208, nil, nil, nil, - nil, nil, 208, nil, nil, nil, nil, nil, nil, nil, - nil, 208, nil, nil, nil, nil, 208, 208, 208, 208, - nil, 208, 208, 208, 208, nil, nil, nil, nil, 208, - 208, nil, nil, nil, 209, 209, 209, 208, 209, 208, - 208, 208, 209, 209, nil, nil, nil, 209, nil, 209, - 209, 209, 209, 209, 209, 209, nil, nil, nil, nil, - nil, 209, 209, 209, 209, 209, 209, 209, nil, nil, - 209, nil, nil, nil, nil, nil, nil, 209, nil, nil, - 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, - 209, 209, nil, 209, 209, nil, 209, 209, 209, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 209, nil, - nil, 209, nil, nil, 209, 209, nil, nil, 209, nil, - 209, nil, 209, nil, 209, nil, nil, 209, nil, nil, - nil, nil, nil, 209, nil, nil, nil, nil, 209, 209, - 209, 209, nil, 209, 209, 209, 209, nil, nil, nil, - nil, 209, 209, nil, nil, nil, 212, 212, 212, 209, - 212, 209, 209, 209, 212, 212, nil, nil, nil, 212, - nil, 212, 212, 212, 212, 212, 212, 212, nil, nil, - nil, nil, nil, 212, 212, 212, 212, 212, 212, 212, - nil, nil, 212, nil, nil, nil, nil, nil, nil, 212, - nil, nil, 212, 212, 212, 212, 212, 212, 212, 212, - nil, 212, 212, 212, nil, 212, 212, nil, 212, 212, - 212, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 212, nil, nil, 212, nil, nil, 212, 212, nil, nil, - 212, nil, nil, nil, nil, nil, 212, nil, nil, nil, - nil, nil, nil, nil, nil, 212, nil, nil, nil, nil, - 212, 212, 212, 212, nil, 212, 212, 212, 212, nil, - nil, nil, nil, 212, 212, nil, nil, nil, 213, 213, - 213, 212, 213, 212, 212, 212, 213, 213, nil, nil, - nil, 213, nil, 213, 213, 213, 213, 213, 213, 213, - nil, nil, nil, nil, nil, 213, 213, 213, 213, 213, - 213, 213, nil, nil, 213, nil, nil, nil, nil, nil, - nil, 213, nil, nil, 213, 213, 213, 213, 213, 213, - 213, 213, nil, 213, 213, 213, nil, 213, 213, nil, - 213, 213, 213, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 213, nil, nil, 213, nil, nil, 213, 213, - nil, nil, 213, nil, 213, nil, nil, nil, 213, nil, - nil, nil, nil, nil, nil, nil, nil, 213, nil, nil, - nil, nil, 213, 213, 213, 213, nil, 213, 213, 213, - 213, nil, nil, nil, nil, 213, 213, nil, nil, nil, - 214, 214, 214, 213, 214, 213, 213, 213, 214, 214, - nil, nil, nil, 214, nil, 214, 214, 214, 214, 214, - 214, 214, nil, nil, nil, nil, nil, 214, 214, 214, - 214, 214, 214, 214, nil, nil, 214, nil, nil, nil, - nil, nil, nil, 214, nil, nil, 214, 214, 214, 214, - 214, 214, 214, 214, nil, 214, 214, 214, nil, 214, - 214, nil, 214, 214, 214, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 214, nil, nil, 214, nil, nil, - 214, 214, nil, nil, 214, nil, nil, nil, nil, nil, - 214, nil, nil, nil, nil, nil, nil, nil, nil, 214, - nil, nil, nil, nil, 214, 214, 214, 214, nil, 214, - 214, 214, 214, nil, nil, nil, nil, 214, 214, nil, - nil, nil, 215, 215, 215, 214, 215, 214, 214, 214, - 215, 215, nil, nil, nil, 215, nil, 215, 215, 215, - 215, 215, 215, 215, nil, nil, nil, nil, nil, 215, - 215, 215, 215, 215, 215, 215, nil, nil, 215, nil, - nil, nil, nil, nil, nil, 215, nil, nil, 215, 215, - 215, 215, 215, 215, 215, 215, nil, 215, 215, 215, - nil, 215, 215, nil, 215, 215, 215, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 215, nil, nil, 215, - nil, nil, 215, 215, nil, nil, 215, nil, nil, nil, - nil, nil, 215, nil, nil, nil, nil, nil, nil, nil, - nil, 215, nil, nil, nil, nil, 215, 215, 215, 215, - nil, 215, 215, 215, 215, nil, nil, nil, nil, 215, - 215, nil, nil, nil, 216, 216, 216, 215, 216, 215, - 215, 215, 216, 216, nil, nil, nil, 216, nil, 216, - 216, 216, 216, 216, 216, 216, nil, nil, nil, nil, - nil, 216, 216, 216, 216, 216, 216, 216, nil, nil, - 216, nil, nil, nil, nil, nil, nil, 216, nil, nil, - 216, 216, 216, 216, 216, 216, 216, 216, nil, 216, - 216, 216, nil, 216, 216, nil, 216, 216, 216, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 216, nil, - nil, 216, nil, nil, 216, 216, nil, nil, 216, nil, - nil, nil, nil, nil, 216, nil, nil, nil, nil, nil, - nil, nil, nil, 216, nil, nil, nil, nil, 216, 216, - 216, 216, nil, 216, 216, 216, 216, nil, nil, nil, - nil, 216, 216, nil, nil, nil, 217, 217, 217, 216, - 217, 216, 216, 216, 217, 217, nil, nil, nil, 217, - nil, 217, 217, 217, 217, 217, 217, 217, nil, nil, - nil, nil, nil, 217, 217, 217, 217, 217, 217, 217, - nil, nil, 217, nil, nil, nil, nil, nil, nil, 217, - nil, nil, 217, 217, 217, 217, 217, 217, 217, 217, - nil, 217, 217, 217, nil, 217, 217, nil, 217, 217, - 217, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 217, nil, nil, 217, nil, nil, 217, 217, nil, nil, - 217, nil, nil, nil, nil, nil, 217, nil, nil, nil, - nil, nil, nil, nil, nil, 217, nil, nil, nil, nil, - 217, 217, 217, 217, nil, 217, 217, 217, 217, nil, - nil, nil, nil, 217, 217, 217, nil, nil, 228, 228, - 228, 217, 228, 217, 217, 217, 228, 228, nil, nil, - nil, 228, nil, 228, 228, 228, 228, 228, 228, 228, - nil, nil, nil, nil, nil, 228, 228, 228, 228, 228, - 228, 228, nil, nil, 228, nil, nil, nil, nil, nil, - nil, 228, nil, nil, 228, 228, 228, 228, 228, 228, - 228, 228, nil, 228, 228, 228, nil, 228, 228, nil, - 228, 228, 228, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 228, nil, nil, 228, nil, nil, 228, 228, - nil, nil, 228, nil, nil, nil, nil, nil, 228, nil, - nil, nil, nil, nil, nil, nil, nil, 228, nil, nil, - nil, nil, 228, 228, 228, 228, nil, 228, 228, 228, - 228, nil, nil, nil, nil, 228, 228, nil, nil, nil, - 231, 231, 231, 228, 231, 228, 228, 228, 231, 231, - nil, nil, nil, 231, nil, 231, 231, 231, 231, 231, - 231, 231, nil, nil, nil, nil, nil, 231, 231, 231, - 231, 231, 231, 231, nil, nil, 231, nil, nil, nil, - nil, nil, nil, 231, nil, nil, 231, 231, 231, 231, - 231, 231, 231, 231, nil, 231, 231, 231, nil, 231, - 231, nil, 231, 231, 231, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 231, nil, nil, 231, nil, nil, - 231, 231, nil, nil, 231, nil, nil, nil, nil, nil, - 231, nil, nil, nil, nil, nil, nil, nil, nil, 231, - nil, nil, nil, nil, 231, 231, 231, 231, nil, 231, - 231, 231, 231, nil, nil, nil, nil, 231, 231, nil, - nil, nil, 232, 232, 232, 231, 232, 231, 231, 231, - 232, 232, nil, nil, nil, 232, nil, 232, 232, 232, - 232, 232, 232, 232, nil, nil, nil, nil, nil, 232, - 232, 232, 232, 232, 232, 232, nil, nil, 232, nil, - nil, nil, nil, nil, nil, 232, nil, nil, 232, 232, - 232, 232, 232, 232, 232, 232, nil, 232, 232, 232, - nil, 232, 232, nil, 232, 232, 232, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 232, nil, nil, 232, - nil, nil, 232, 232, nil, nil, 232, nil, nil, nil, - nil, nil, 232, nil, nil, nil, nil, nil, nil, nil, - nil, 232, nil, nil, nil, nil, 232, 232, 232, 232, - nil, 232, 232, 232, 232, nil, nil, nil, nil, 232, - 232, nil, nil, nil, 233, 233, 233, 232, 233, 232, - 232, 232, 233, 233, nil, nil, nil, 233, nil, 233, - 233, 233, 233, 233, 233, 233, nil, nil, nil, nil, - nil, 233, 233, 233, 233, 233, 233, 233, nil, nil, - 233, nil, nil, nil, nil, nil, nil, 233, nil, nil, - 233, 233, 233, 233, 233, 233, 233, 233, nil, 233, - 233, 233, nil, 233, 233, nil, 233, 233, 233, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 233, nil, - nil, 233, nil, nil, 233, 233, nil, nil, 233, nil, - nil, nil, nil, nil, 233, nil, nil, nil, nil, nil, - nil, nil, nil, 233, nil, nil, nil, nil, 233, 233, - 233, 233, nil, 233, 233, 233, 233, nil, nil, nil, - nil, 233, 233, nil, nil, nil, 234, 234, 234, 233, - 234, 233, 233, 233, 234, 234, nil, nil, nil, 234, - nil, 234, 234, 234, 234, 234, 234, 234, nil, nil, - nil, nil, nil, 234, 234, 234, 234, 234, 234, 234, - nil, nil, 234, nil, nil, nil, nil, nil, nil, 234, - nil, nil, 234, 234, 234, 234, 234, 234, 234, 234, - nil, 234, 234, 234, nil, 234, 234, nil, 234, 234, - 234, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 234, nil, nil, 234, nil, nil, 234, 234, nil, nil, - 234, nil, nil, nil, nil, nil, 234, nil, nil, nil, - nil, nil, nil, nil, nil, 234, nil, nil, nil, nil, - 234, 234, 234, 234, nil, 234, 234, 234, 234, nil, - nil, nil, nil, 234, 234, nil, nil, nil, 235, 235, - 235, 234, 235, 234, 234, 234, 235, 235, nil, nil, - nil, 235, nil, 235, 235, 235, 235, 235, 235, 235, - nil, nil, nil, nil, nil, 235, 235, 235, 235, 235, - 235, 235, nil, nil, 235, nil, nil, nil, nil, nil, - nil, 235, nil, nil, 235, 235, 235, 235, 235, 235, - 235, 235, nil, 235, 235, 235, nil, 235, 235, nil, - 235, 235, 235, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 235, nil, nil, 235, nil, nil, 235, 235, - nil, nil, 235, nil, nil, nil, nil, nil, 235, nil, - nil, nil, nil, nil, nil, nil, nil, 235, nil, nil, - nil, nil, 235, 235, 235, 235, nil, 235, 235, 235, - 235, nil, nil, nil, nil, 235, 235, nil, nil, nil, - 236, 236, 236, 235, 236, 235, 235, 235, 236, 236, - nil, nil, nil, 236, nil, 236, 236, 236, 236, 236, - 236, 236, nil, nil, nil, nil, nil, 236, 236, 236, - 236, 236, 236, 236, nil, nil, 236, nil, nil, nil, - nil, nil, nil, 236, nil, nil, 236, 236, 236, 236, - 236, 236, 236, 236, nil, 236, 236, 236, nil, 236, - 236, nil, 236, 236, 236, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 236, nil, nil, 236, nil, nil, - 236, 236, nil, nil, 236, nil, nil, nil, nil, nil, - 236, nil, nil, nil, nil, nil, nil, nil, nil, 236, - nil, nil, nil, nil, 236, 236, 236, 236, nil, 236, - 236, 236, 236, nil, nil, nil, nil, 236, 236, nil, - nil, nil, 237, 237, 237, 236, 237, 236, 236, 236, - 237, 237, nil, nil, nil, 237, nil, 237, 237, 237, - 237, 237, 237, 237, nil, nil, nil, nil, nil, 237, - 237, 237, 237, 237, 237, 237, nil, nil, 237, nil, - nil, nil, nil, nil, nil, 237, nil, nil, 237, 237, - 237, 237, 237, 237, 237, 237, nil, 237, 237, 237, - nil, 237, 237, nil, 237, 237, 237, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 237, nil, nil, 237, - nil, nil, 237, 237, nil, nil, 237, nil, nil, nil, - nil, nil, 237, nil, nil, nil, nil, nil, nil, nil, - nil, 237, nil, nil, nil, nil, 237, 237, 237, 237, - nil, 237, 237, 237, 237, nil, nil, nil, nil, 237, - 237, nil, nil, nil, 238, 238, 238, 237, 238, 237, - 237, 237, 238, 238, nil, nil, nil, 238, nil, 238, - 238, 238, 238, 238, 238, 238, nil, nil, nil, nil, - nil, 238, 238, 238, 238, 238, 238, 238, nil, nil, - 238, nil, nil, nil, nil, nil, nil, 238, nil, nil, - 238, 238, 238, 238, 238, 238, 238, 238, nil, 238, - 238, 238, nil, 238, 238, nil, 238, 238, 238, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 238, nil, - nil, 238, nil, nil, 238, 238, nil, nil, 238, nil, - nil, nil, nil, nil, 238, nil, nil, nil, nil, nil, - nil, nil, nil, 238, nil, nil, nil, nil, 238, 238, - 238, 238, nil, 238, 238, 238, 238, nil, nil, nil, - nil, 238, 238, nil, nil, nil, 239, 239, 239, 238, - 239, 238, 238, 238, 239, 239, nil, nil, nil, 239, - nil, 239, 239, 239, 239, 239, 239, 239, nil, nil, - nil, nil, nil, 239, 239, 239, 239, 239, 239, 239, - nil, nil, 239, nil, nil, nil, nil, nil, nil, 239, - nil, nil, 239, 239, 239, 239, 239, 239, 239, 239, - nil, 239, 239, 239, nil, 239, 239, nil, 239, 239, - 239, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 239, nil, nil, 239, nil, nil, 239, 239, nil, nil, - 239, nil, nil, nil, nil, nil, 239, nil, nil, nil, - nil, nil, nil, nil, nil, 239, nil, nil, nil, nil, - 239, 239, 239, 239, nil, 239, 239, 239, 239, nil, - nil, nil, nil, 239, 239, nil, nil, nil, 240, 240, - 240, 239, 240, 239, 239, 239, 240, 240, nil, nil, - nil, 240, nil, 240, 240, 240, 240, 240, 240, 240, - nil, nil, nil, nil, nil, 240, 240, 240, 240, 240, - 240, 240, nil, nil, 240, nil, nil, nil, nil, nil, - nil, 240, nil, nil, 240, 240, 240, 240, 240, 240, - 240, 240, nil, 240, 240, 240, nil, 240, 240, nil, - 240, 240, 240, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 240, nil, nil, 240, nil, nil, 240, 240, - nil, nil, 240, nil, nil, nil, nil, nil, 240, nil, - nil, nil, nil, nil, nil, nil, nil, 240, nil, nil, - nil, nil, 240, 240, 240, 240, nil, 240, 240, 240, - 240, nil, nil, nil, nil, 240, 240, nil, nil, nil, - 241, 241, 241, 240, 241, 240, 240, 240, 241, 241, - nil, nil, nil, 241, nil, 241, 241, 241, 241, 241, - 241, 241, nil, nil, nil, nil, nil, 241, 241, 241, - 241, 241, 241, 241, nil, nil, 241, nil, nil, nil, - nil, nil, nil, 241, nil, nil, 241, 241, 241, 241, - 241, 241, 241, 241, nil, 241, 241, 241, nil, 241, - 241, nil, 241, 241, 241, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 241, nil, nil, 241, nil, nil, - 241, 241, nil, nil, 241, nil, nil, nil, nil, nil, - 241, nil, nil, nil, nil, nil, nil, nil, nil, 241, - nil, nil, nil, nil, 241, 241, 241, 241, nil, 241, - 241, 241, 241, nil, nil, nil, nil, 241, 241, nil, - nil, nil, 242, 242, 242, 241, 242, 241, 241, 241, - 242, 242, nil, nil, nil, 242, nil, 242, 242, 242, - 242, 242, 242, 242, nil, nil, nil, nil, nil, 242, - 242, 242, 242, 242, 242, 242, nil, nil, 242, nil, - nil, nil, nil, nil, nil, 242, nil, nil, 242, 242, - 242, 242, 242, 242, 242, 242, nil, 242, 242, 242, - nil, 242, 242, nil, 242, 242, 242, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 242, nil, nil, 242, - nil, nil, 242, 242, nil, nil, 242, nil, nil, nil, - nil, nil, 242, nil, nil, nil, nil, nil, nil, nil, - nil, 242, nil, nil, nil, nil, 242, 242, 242, 242, - nil, 242, 242, 242, 242, nil, nil, nil, nil, 242, - 242, nil, nil, nil, 243, 243, 243, 242, 243, 242, - 242, 242, 243, 243, nil, nil, nil, 243, nil, 243, - 243, 243, 243, 243, 243, 243, nil, nil, nil, nil, - nil, 243, 243, 243, 243, 243, 243, 243, nil, nil, - 243, nil, nil, nil, nil, nil, nil, 243, nil, nil, - 243, 243, 243, 243, 243, 243, 243, 243, nil, 243, - 243, 243, nil, 243, 243, nil, 243, 243, 243, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 243, nil, - nil, 243, nil, nil, 243, 243, nil, nil, 243, nil, - nil, nil, nil, nil, 243, nil, nil, nil, nil, nil, - nil, nil, nil, 243, nil, nil, nil, nil, 243, 243, - 243, 243, nil, 243, 243, 243, 243, nil, nil, nil, - nil, 243, 243, nil, nil, nil, 244, 244, 244, 243, - 244, 243, 243, 243, 244, 244, nil, nil, nil, 244, - nil, 244, 244, 244, 244, 244, 244, 244, nil, nil, - nil, nil, nil, 244, 244, 244, 244, 244, 244, 244, - nil, nil, 244, nil, nil, nil, nil, nil, nil, 244, - nil, nil, 244, 244, 244, 244, 244, 244, 244, 244, - nil, 244, 244, 244, nil, 244, 244, nil, 244, 244, - 244, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 244, nil, nil, 244, nil, nil, 244, 244, nil, nil, - 244, nil, nil, nil, nil, nil, 244, nil, nil, nil, - nil, nil, nil, nil, nil, 244, nil, nil, nil, nil, - 244, 244, 244, 244, nil, 244, 244, 244, 244, nil, - nil, nil, nil, 244, 244, nil, nil, nil, 245, 245, - 245, 244, 245, 244, 244, 244, 245, 245, nil, nil, - nil, 245, nil, 245, 245, 245, 245, 245, 245, 245, - nil, nil, nil, nil, nil, 245, 245, 245, 245, 245, - 245, 245, nil, nil, 245, nil, nil, nil, nil, nil, - nil, 245, nil, nil, 245, 245, 245, 245, 245, 245, - 245, 245, nil, 245, 245, 245, nil, 245, 245, nil, - 245, 245, 245, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 245, nil, nil, 245, nil, nil, 245, 245, - nil, nil, 245, nil, nil, nil, nil, nil, 245, nil, - nil, nil, nil, nil, nil, nil, nil, 245, nil, nil, - nil, nil, 245, 245, 245, 245, nil, 245, 245, 245, - 245, nil, nil, nil, nil, 245, 245, nil, nil, nil, - 246, 246, 246, 245, 246, 245, 245, 245, 246, 246, - nil, nil, nil, 246, nil, 246, 246, 246, 246, 246, - 246, 246, nil, nil, nil, nil, nil, 246, 246, 246, - 246, 246, 246, 246, nil, nil, 246, nil, nil, nil, - nil, nil, nil, 246, nil, nil, 246, 246, 246, 246, - 246, 246, 246, 246, nil, 246, 246, 246, nil, 246, - 246, nil, 246, 246, 246, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 246, nil, nil, 246, nil, nil, - 246, 246, nil, nil, 246, nil, nil, nil, nil, nil, - 246, nil, nil, nil, nil, nil, nil, nil, nil, 246, - nil, nil, nil, nil, 246, 246, 246, 246, nil, 246, - 246, 246, 246, nil, nil, nil, nil, 246, 246, nil, - nil, nil, 247, 247, 247, 246, 247, 246, 246, 246, - 247, 247, nil, nil, nil, 247, nil, 247, 247, 247, - 247, 247, 247, 247, nil, nil, nil, nil, nil, 247, - 247, 247, 247, 247, 247, 247, nil, nil, 247, nil, - nil, nil, nil, nil, nil, 247, nil, nil, 247, 247, - 247, 247, 247, 247, 247, 247, nil, 247, 247, 247, - nil, 247, 247, nil, 247, 247, 247, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 247, nil, nil, 247, - nil, nil, 247, 247, nil, nil, 247, nil, nil, nil, - nil, nil, 247, nil, nil, nil, nil, nil, nil, nil, - nil, 247, nil, nil, nil, nil, 247, 247, 247, 247, - nil, 247, 247, 247, 247, nil, nil, nil, nil, 247, - 247, nil, nil, nil, 248, 248, 248, 247, 248, 247, - 247, 247, 248, 248, nil, nil, nil, 248, nil, 248, - 248, 248, 248, 248, 248, 248, nil, nil, nil, nil, - nil, 248, 248, 248, 248, 248, 248, 248, nil, nil, - 248, nil, nil, nil, nil, nil, nil, 248, nil, nil, - 248, 248, 248, 248, 248, 248, 248, 248, nil, 248, - 248, 248, nil, 248, 248, nil, 248, 248, 248, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 248, nil, - nil, 248, nil, nil, 248, 248, nil, nil, 248, nil, - nil, nil, nil, nil, 248, nil, nil, nil, nil, nil, - nil, nil, nil, 248, nil, nil, nil, nil, 248, 248, - 248, 248, nil, 248, 248, 248, 248, nil, nil, nil, - nil, 248, 248, nil, nil, nil, 249, 249, 249, 248, - 249, 248, 248, 248, 249, 249, nil, nil, nil, 249, - nil, 249, 249, 249, 249, 249, 249, 249, nil, nil, - nil, nil, nil, 249, 249, 249, 249, 249, 249, 249, - nil, nil, 249, nil, nil, nil, nil, nil, nil, 249, - nil, nil, 249, 249, 249, 249, 249, 249, 249, 249, - nil, 249, 249, 249, nil, 249, 249, nil, 249, 249, - 249, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 249, nil, nil, 249, nil, nil, 249, 249, nil, nil, - 249, nil, nil, nil, nil, nil, 249, nil, nil, nil, - nil, nil, nil, nil, nil, 249, nil, nil, nil, nil, - 249, 249, 249, 249, nil, 249, 249, 249, 249, nil, - nil, nil, nil, 249, 249, nil, nil, nil, 250, 250, - 250, 249, 250, 249, 249, 249, 250, 250, nil, nil, - nil, 250, nil, 250, 250, 250, 250, 250, 250, 250, - nil, nil, nil, nil, nil, 250, 250, 250, 250, 250, - 250, 250, nil, nil, 250, nil, nil, nil, nil, nil, - nil, 250, nil, nil, 250, 250, 250, 250, 250, 250, - 250, 250, nil, 250, 250, 250, nil, 250, 250, nil, - 250, 250, 250, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 250, nil, nil, 250, nil, nil, 250, 250, - nil, nil, 250, nil, nil, nil, nil, nil, 250, nil, - nil, nil, nil, nil, nil, nil, nil, 250, nil, nil, - nil, nil, 250, 250, 250, 250, nil, 250, 250, 250, - 250, nil, nil, nil, nil, 250, 250, nil, nil, nil, - 251, 251, 251, 250, 251, 250, 250, 250, 251, 251, - nil, nil, nil, 251, nil, 251, 251, 251, 251, 251, - 251, 251, nil, nil, nil, nil, nil, 251, 251, 251, - 251, 251, 251, 251, nil, nil, 251, nil, nil, nil, - nil, nil, nil, 251, nil, nil, 251, 251, 251, 251, - 251, 251, 251, 251, nil, 251, 251, 251, nil, 251, - 251, nil, 251, 251, 251, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 251, nil, nil, 251, nil, nil, - 251, 251, nil, nil, 251, nil, nil, nil, nil, nil, - 251, nil, nil, nil, nil, nil, nil, nil, nil, 251, - nil, nil, nil, nil, 251, 251, 251, 251, nil, 251, - 251, 251, 251, nil, nil, nil, nil, 251, 251, nil, - nil, nil, 252, 252, 252, 251, 252, 251, 251, 251, - 252, 252, nil, nil, nil, 252, nil, 252, 252, 252, - 252, 252, 252, 252, nil, nil, nil, nil, nil, 252, - 252, 252, 252, 252, 252, 252, nil, nil, 252, nil, - nil, nil, nil, nil, nil, 252, nil, nil, 252, 252, - 252, 252, 252, 252, 252, 252, nil, 252, 252, 252, - nil, 252, 252, nil, 252, 252, 252, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 252, nil, nil, 252, - nil, nil, 252, 252, nil, nil, 252, nil, nil, nil, - nil, nil, 252, nil, nil, nil, nil, nil, nil, nil, - nil, 252, nil, nil, nil, nil, 252, 252, 252, 252, - nil, 252, 252, 252, 252, nil, nil, nil, nil, 252, - 252, nil, nil, nil, 253, 253, 253, 252, 253, 252, - 252, 252, 253, 253, nil, nil, nil, 253, nil, 253, - 253, 253, 253, 253, 253, 253, nil, nil, nil, nil, - nil, 253, 253, 253, 253, 253, 253, 253, nil, nil, - 253, nil, nil, nil, nil, nil, nil, 253, nil, nil, - 253, 253, 253, 253, 253, 253, 253, 253, nil, 253, - 253, 253, nil, 253, 253, nil, 253, 253, 253, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 253, nil, - nil, 253, nil, nil, 253, 253, nil, nil, 253, nil, - nil, nil, nil, nil, 253, nil, nil, nil, nil, nil, - nil, nil, nil, 253, nil, nil, nil, nil, 253, 253, - 253, 253, nil, 253, 253, 253, 253, nil, nil, nil, - nil, 253, 253, nil, nil, nil, 254, 254, 254, 253, - 254, 253, 253, 253, 254, 254, nil, nil, nil, 254, - nil, 254, 254, 254, 254, 254, 254, 254, nil, nil, - nil, nil, nil, 254, 254, 254, 254, 254, 254, 254, - nil, nil, 254, nil, nil, nil, nil, nil, nil, 254, - nil, nil, 254, 254, 254, 254, 254, 254, 254, 254, - nil, 254, 254, 254, nil, 254, 254, nil, 254, 254, - 254, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 254, nil, nil, 254, nil, nil, 254, 254, nil, nil, - 254, nil, nil, nil, nil, nil, 254, nil, nil, nil, - nil, nil, nil, nil, nil, 254, nil, nil, nil, nil, - 254, 254, 254, 254, nil, 254, 254, 254, 254, nil, - nil, nil, nil, 254, 254, nil, nil, nil, 255, 255, - 255, 254, 255, 254, 254, 254, 255, 255, nil, nil, - nil, 255, nil, 255, 255, 255, 255, 255, 255, 255, - nil, nil, nil, nil, nil, 255, 255, 255, 255, 255, - 255, 255, nil, nil, 255, nil, nil, nil, nil, nil, - nil, 255, nil, nil, 255, 255, 255, 255, 255, 255, - 255, 255, nil, 255, 255, 255, nil, 255, 255, nil, - 255, 255, 255, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 255, nil, nil, 255, nil, nil, 255, 255, - nil, nil, 255, nil, nil, nil, nil, nil, 255, nil, - nil, nil, nil, nil, nil, nil, nil, 255, nil, nil, - nil, nil, 255, 255, 255, 255, nil, 255, 255, 255, - 255, nil, nil, nil, nil, 255, 255, nil, nil, nil, - 263, 263, 263, 255, 263, 255, 255, 255, 263, 263, - nil, nil, nil, 263, nil, 263, 263, 263, 263, 263, - 263, 263, nil, nil, nil, nil, nil, 263, 263, 263, - 263, 263, 263, 263, nil, nil, 263, nil, nil, nil, - nil, nil, nil, 263, nil, nil, 263, 263, 263, 263, - 263, 263, 263, 263, 263, 263, 263, 263, nil, 263, - 263, nil, 263, 263, 263, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 263, nil, nil, 263, nil, nil, - 263, 263, nil, nil, 263, nil, 263, nil, 263, nil, - 263, nil, nil, 263, nil, nil, nil, nil, nil, 263, - nil, nil, nil, nil, 263, 263, 263, 263, nil, 263, - 263, 263, 263, nil, nil, nil, nil, 263, 263, nil, - nil, nil, 264, 264, 264, 263, 264, 263, 263, 263, - 264, 264, nil, nil, nil, 264, nil, 264, 264, 264, - 264, 264, 264, 264, nil, nil, nil, nil, nil, 264, - 264, 264, 264, 264, 264, 264, nil, nil, 264, nil, - nil, nil, nil, nil, nil, 264, nil, nil, 264, 264, - 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - nil, 264, 264, nil, 264, 264, 264, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 264, nil, nil, 264, - nil, nil, 264, 264, nil, nil, 264, nil, 264, nil, - 264, nil, 264, nil, nil, 264, nil, nil, nil, nil, - nil, 264, nil, nil, nil, nil, 264, 264, 264, 264, - nil, 264, 264, 264, 264, nil, nil, nil, nil, 264, - 264, nil, nil, nil, 272, 272, 272, 264, 272, 264, - 264, 264, 272, 272, nil, nil, nil, 272, nil, 272, - 272, 272, 272, 272, 272, 272, nil, nil, nil, nil, - nil, 272, 272, 272, 272, 272, 272, 272, nil, nil, - 272, nil, nil, nil, nil, nil, nil, 272, nil, nil, - 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, - 272, 272, nil, 272, 272, nil, 272, 272, 272, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 272, nil, - nil, 272, nil, nil, 272, 272, nil, nil, 272, nil, - 272, nil, 272, nil, 272, nil, nil, 272, nil, nil, - nil, nil, nil, 272, nil, nil, nil, nil, 272, 272, - 272, 272, nil, 272, 272, 272, 272, nil, nil, nil, - nil, 272, 272, 272, nil, nil, 279, 279, 279, 272, - 279, 272, 272, 272, 279, 279, nil, nil, nil, 279, - nil, 279, 279, 279, 279, 279, 279, 279, nil, nil, - nil, nil, nil, 279, 279, 279, 279, 279, 279, 279, - nil, nil, 279, nil, nil, nil, nil, nil, nil, 279, - nil, nil, 279, 279, 279, 279, 279, 279, 279, 279, - nil, 279, 279, 279, nil, 279, 279, nil, 279, 279, - 279, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 279, nil, nil, 279, nil, nil, 279, 279, nil, nil, - 279, nil, nil, nil, nil, nil, 279, nil, nil, nil, - nil, nil, nil, nil, nil, 279, nil, nil, nil, nil, - 279, 279, 279, 279, nil, 279, 279, 279, 279, nil, - nil, nil, nil, 279, 279, nil, nil, nil, 281, 281, - 281, 279, 281, 279, 279, 279, 281, 281, nil, nil, - nil, 281, nil, 281, 281, 281, 281, 281, 281, 281, - nil, nil, nil, nil, nil, 281, 281, 281, 281, 281, - 281, 281, nil, nil, 281, nil, nil, nil, nil, nil, - nil, 281, nil, nil, 281, 281, 281, 281, 281, 281, - 281, 281, nil, 281, 281, 281, nil, 281, 281, nil, - 281, 281, 281, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 281, nil, nil, 281, nil, nil, 281, 281, - nil, nil, 281, nil, nil, nil, nil, nil, 281, nil, - nil, nil, nil, nil, nil, nil, nil, 281, nil, nil, - nil, nil, 281, 281, 281, 281, nil, 281, 281, 281, - 281, nil, nil, nil, nil, 281, 281, nil, nil, nil, - 284, 284, 284, 281, 284, 281, 281, 281, 284, 284, - nil, nil, nil, 284, nil, 284, 284, 284, 284, 284, - 284, 284, nil, nil, nil, nil, nil, 284, 284, 284, - 284, 284, 284, 284, nil, nil, 284, nil, nil, nil, - nil, nil, nil, 284, nil, nil, 284, 284, 284, 284, - 284, 284, 284, 284, nil, 284, 284, 284, nil, 284, - 284, nil, 284, 284, 284, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 284, nil, nil, 284, nil, nil, - 284, 284, nil, nil, 284, nil, nil, nil, nil, nil, - 284, nil, nil, nil, nil, nil, nil, nil, nil, 284, - nil, nil, nil, nil, 284, 284, 284, 284, nil, 284, - 284, 284, 284, nil, nil, nil, nil, 284, 284, nil, - nil, nil, 285, 285, 285, 284, 285, 284, 284, 284, - 285, 285, nil, nil, nil, 285, nil, 285, 285, 285, - 285, 285, 285, 285, nil, nil, nil, nil, nil, 285, - 285, 285, 285, 285, 285, 285, nil, nil, 285, nil, - nil, nil, nil, nil, nil, 285, nil, nil, 285, 285, - 285, 285, 285, 285, 285, 285, nil, 285, 285, 285, - nil, 285, 285, nil, 285, 285, 285, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 285, nil, nil, 285, - nil, nil, 285, 285, nil, nil, 285, nil, nil, nil, - nil, nil, 285, nil, nil, nil, nil, nil, nil, nil, - nil, 285, nil, nil, nil, nil, 285, 285, 285, 285, - nil, 285, 285, 285, 285, nil, nil, nil, nil, 285, - 285, nil, nil, nil, nil, nil, nil, 285, nil, 285, - 285, 285, 290, 290, 290, 290, 290, nil, nil, nil, - 290, 290, nil, nil, nil, 290, nil, 290, 290, 290, - 290, 290, 290, 290, nil, nil, nil, nil, nil, 290, - 290, 290, 290, 290, 290, 290, nil, nil, 290, nil, - nil, nil, nil, nil, 290, 290, nil, 290, 290, 290, - 290, 290, 290, 290, 290, 290, nil, 290, 290, 290, - nil, 290, 290, nil, 290, 290, 290, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 290, nil, nil, 290, - nil, nil, 290, 290, nil, nil, 290, nil, 290, nil, - nil, nil, 290, nil, nil, nil, nil, nil, nil, nil, - nil, 290, nil, nil, nil, nil, 290, 290, 290, 290, - nil, 290, 290, 290, 290, nil, nil, nil, nil, 290, - 290, nil, nil, nil, 298, 298, 298, 290, 298, 290, - 290, 290, 298, 298, nil, nil, nil, 298, nil, 298, - 298, 298, 298, 298, 298, 298, nil, nil, nil, nil, - nil, 298, 298, 298, 298, 298, 298, 298, nil, nil, - 298, nil, nil, nil, nil, nil, nil, 298, nil, nil, - 298, 298, 298, 298, 298, 298, 298, 298, nil, 298, - 298, 298, nil, 298, 298, nil, nil, nil, 298, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 298, nil, - nil, 298, nil, nil, 298, 298, nil, nil, 298, nil, - 895, nil, 895, 895, 895, 895, 895, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 895, nil, 298, 298, - 298, 298, nil, 298, 298, 298, 298, nil, nil, nil, - nil, 298, 298, nil, nil, nil, 298, nil, 895, 298, - nil, 298, 298, 298, 315, 315, 315, nil, 315, 895, - 895, nil, 315, 315, 895, nil, nil, 315, nil, 315, - 315, 315, 315, 315, 315, 315, nil, nil, nil, nil, - nil, 315, 315, 315, 315, 315, 315, 315, nil, nil, - 315, nil, nil, nil, nil, nil, nil, 315, nil, nil, - 315, 315, 315, 315, 315, 315, 315, 315, nil, 315, - 315, 315, nil, 315, 315, nil, nil, nil, 315, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 315, nil, - nil, 315, nil, nil, 315, 315, nil, nil, 315, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 315, 315, - 315, 315, nil, 315, 315, 315, 315, nil, nil, nil, - nil, 315, 315, nil, nil, nil, 323, 323, 323, 315, - 323, 315, 315, 315, 323, 323, nil, nil, nil, 323, - nil, 323, 323, 323, 323, 323, 323, 323, nil, nil, - nil, nil, nil, 323, 323, 323, 323, 323, 323, 323, - nil, nil, 323, nil, nil, nil, nil, nil, nil, 323, - nil, nil, 323, 323, 323, 323, 323, 323, 323, 323, - nil, 323, 323, 323, nil, 323, 323, nil, 323, 323, - 323, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 323, nil, nil, 323, 323, nil, 323, 323, nil, nil, - 323, nil, nil, nil, nil, nil, 323, nil, nil, nil, - nil, nil, nil, nil, nil, 323, nil, nil, nil, nil, - 323, 323, 323, 323, nil, 323, 323, 323, 323, nil, - nil, nil, nil, 323, 323, nil, nil, nil, 325, 325, - 325, 323, 325, 323, 323, 323, 325, 325, nil, nil, - nil, 325, nil, 325, 325, 325, 325, 325, 325, 325, - nil, nil, nil, nil, nil, 325, 325, 325, 325, 325, - 325, 325, nil, nil, 325, nil, nil, nil, nil, nil, - nil, 325, nil, nil, 325, 325, 325, 325, 325, 325, - 325, 325, nil, 325, 325, 325, nil, 325, 325, nil, - 325, 325, 325, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 325, nil, nil, 325, nil, nil, 325, 325, - nil, nil, 325, nil, nil, nil, nil, nil, 325, nil, - nil, nil, nil, nil, nil, nil, nil, 325, nil, nil, - nil, nil, 325, 325, 325, 325, nil, 325, 325, 325, - 325, nil, nil, nil, nil, 325, 325, nil, nil, nil, - 340, 340, 340, 325, 340, 325, 325, 325, 340, 340, - nil, nil, nil, 340, nil, 340, 340, 340, 340, 340, - 340, 340, nil, nil, nil, nil, nil, 340, 340, 340, - 340, 340, 340, 340, nil, nil, 340, nil, nil, nil, - nil, nil, nil, 340, nil, nil, 340, 340, 340, 340, - 340, 340, 340, 340, nil, 340, 340, 340, nil, 340, - 340, nil, 340, 340, 340, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 340, nil, nil, 340, nil, nil, - 340, 340, nil, nil, 340, nil, nil, nil, nil, nil, - 340, nil, nil, nil, nil, nil, nil, nil, nil, 340, - nil, nil, nil, nil, 340, 340, 340, 340, nil, 340, - 340, 340, 340, nil, nil, nil, nil, 340, 340, nil, - nil, nil, 341, 341, 341, 340, 341, 340, 340, 340, - 341, 341, nil, nil, nil, 341, nil, 341, 341, 341, - 341, 341, 341, 341, nil, nil, nil, nil, nil, 341, - 341, 341, 341, 341, 341, 341, nil, nil, 341, nil, - nil, nil, nil, nil, nil, 341, nil, nil, 341, 341, - 341, 341, 341, 341, 341, 341, nil, 341, 341, 341, - nil, 341, 341, nil, 341, 341, 341, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 341, nil, nil, 341, - nil, nil, 341, 341, nil, nil, 341, nil, nil, nil, - nil, nil, 341, nil, nil, nil, nil, nil, nil, nil, - nil, 341, nil, nil, nil, nil, 341, 341, 341, 341, - nil, 341, 341, 341, 341, nil, nil, nil, nil, 341, - 341, nil, nil, nil, 360, 360, 360, 341, 360, 341, - 341, 341, 360, 360, nil, nil, nil, 360, nil, 360, - 360, 360, 360, 360, 360, 360, nil, nil, nil, nil, - nil, 360, 360, 360, 360, 360, 360, 360, nil, nil, - 360, nil, nil, nil, nil, nil, nil, 360, nil, nil, - 360, 360, 360, 360, 360, 360, 360, 360, nil, 360, - 360, 360, nil, 360, 360, nil, 360, 360, 360, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 360, nil, - nil, 360, nil, nil, 360, 360, nil, nil, 360, nil, - nil, nil, nil, nil, 360, nil, nil, nil, nil, nil, - nil, nil, nil, 360, nil, nil, nil, nil, 360, 360, - 360, 360, nil, 360, 360, 360, 360, nil, nil, nil, - nil, 360, 360, nil, nil, nil, 376, 376, 376, 360, - 376, 360, 360, 360, 376, 376, nil, nil, nil, 376, - nil, 376, 376, 376, 376, 376, 376, 376, nil, nil, - nil, nil, nil, 376, 376, 376, 376, 376, 376, 376, - nil, nil, 376, nil, nil, nil, nil, nil, nil, 376, - nil, nil, 376, 376, 376, 376, 376, 376, 376, 376, - nil, 376, 376, 376, nil, 376, 376, nil, 376, 376, - 376, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 376, nil, nil, 376, nil, nil, 376, 376, nil, nil, - 376, nil, nil, nil, nil, nil, 376, nil, nil, nil, - nil, nil, nil, nil, nil, 376, nil, nil, nil, nil, - 376, 376, 376, 376, nil, 376, 376, 376, 376, nil, - nil, nil, nil, 376, 376, nil, nil, nil, 404, 404, - 404, 376, 404, 376, 376, 376, 404, 404, nil, nil, - nil, 404, nil, 404, 404, 404, 404, 404, 404, 404, - nil, nil, nil, nil, nil, 404, 404, 404, 404, 404, - 404, 404, nil, nil, 404, nil, nil, nil, nil, nil, - nil, 404, nil, nil, 404, 404, 404, 404, 404, 404, - 404, 404, nil, 404, 404, 404, nil, 404, 404, nil, - 404, 404, 404, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 404, nil, nil, 404, nil, nil, 404, 404, - nil, nil, 404, nil, nil, nil, nil, nil, 404, nil, - nil, nil, nil, nil, nil, nil, nil, 404, nil, nil, - nil, nil, 404, 404, 404, 404, nil, 404, 404, 404, - 404, nil, nil, nil, nil, 404, 404, nil, nil, nil, - 442, 442, 442, 404, 442, 404, 404, 404, 442, 442, - nil, nil, nil, 442, nil, 442, 442, 442, 442, 442, - 442, 442, nil, nil, nil, nil, nil, 442, 442, 442, - 442, 442, 442, 442, nil, nil, 442, nil, nil, nil, - nil, nil, nil, 442, nil, nil, 442, 442, 442, 442, - 442, 442, 442, 442, 442, 442, 442, 442, nil, 442, - 442, nil, 442, 442, 442, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 442, nil, nil, 442, nil, nil, - 442, 442, nil, nil, 442, nil, 442, nil, 442, nil, - 442, nil, nil, 442, nil, nil, nil, nil, nil, 442, - nil, nil, nil, nil, 442, 442, 442, 442, nil, 442, - 442, 442, 442, nil, nil, nil, nil, 442, 442, nil, - nil, nil, 444, 444, 444, 442, 444, 442, 442, 442, - 444, 444, nil, nil, nil, 444, nil, 444, 444, 444, - 444, 444, 444, 444, nil, nil, nil, nil, nil, 444, - 444, 444, 444, 444, 444, 444, nil, nil, 444, nil, - nil, nil, nil, nil, nil, 444, nil, nil, 444, 444, - 444, 444, 444, 444, 444, 444, nil, 444, 444, 444, - nil, 444, 444, nil, 444, 444, 444, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 444, nil, nil, 444, - nil, nil, 444, 444, nil, nil, 444, nil, nil, nil, - nil, nil, 444, nil, nil, nil, nil, nil, nil, nil, - nil, 444, nil, nil, nil, nil, 444, 444, 444, 444, - nil, 444, 444, 444, 444, nil, nil, nil, nil, 444, - 444, nil, nil, nil, 445, 445, 445, 444, 445, 444, - 444, 444, 445, 445, nil, nil, nil, 445, nil, 445, - 445, 445, 445, 445, 445, 445, nil, nil, nil, nil, - nil, 445, 445, 445, 445, 445, 445, 445, nil, nil, - 445, nil, nil, nil, nil, nil, nil, 445, nil, nil, - 445, 445, 445, 445, 445, 445, 445, 445, nil, 445, - 445, 445, nil, 445, 445, nil, 445, 445, 445, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 445, nil, - nil, 445, nil, nil, 445, 445, nil, nil, 445, nil, - nil, nil, nil, nil, 445, nil, nil, nil, nil, nil, - nil, nil, nil, 445, nil, nil, nil, nil, 445, 445, - 445, 445, nil, 445, 445, 445, 445, nil, nil, nil, - nil, 445, 445, nil, nil, nil, 446, 446, 446, 445, - 446, 445, 445, 445, 446, 446, nil, nil, nil, 446, - nil, 446, 446, 446, 446, 446, 446, 446, nil, nil, - nil, nil, nil, 446, 446, 446, 446, 446, 446, 446, - nil, nil, 446, nil, nil, nil, nil, nil, nil, 446, - nil, nil, 446, 446, 446, 446, 446, 446, 446, 446, - nil, 446, 446, 446, nil, 446, 446, nil, 446, 446, - 446, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 446, nil, nil, 446, nil, nil, 446, 446, nil, nil, - 446, nil, nil, nil, nil, nil, 446, nil, nil, nil, - nil, nil, nil, nil, nil, 446, nil, nil, nil, nil, - 446, 446, 446, 446, nil, 446, 446, 446, 446, nil, - nil, nil, nil, 446, 446, nil, nil, nil, 472, 472, - 472, 446, 472, 446, 446, 446, 472, 472, nil, nil, - nil, 472, nil, 472, 472, 472, 472, 472, 472, 472, - nil, nil, nil, nil, nil, 472, 472, 472, 472, 472, - 472, 472, nil, nil, 472, nil, nil, nil, nil, nil, - nil, 472, nil, nil, 472, 472, 472, 472, 472, 472, - 472, 472, nil, 472, 472, 472, nil, 472, 472, nil, - 472, 472, 472, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 472, nil, nil, 472, nil, nil, 472, 472, - nil, nil, 472, nil, nil, nil, nil, nil, 472, nil, - nil, nil, nil, nil, nil, nil, nil, 472, nil, nil, - nil, nil, 472, 472, 472, 472, nil, 472, 472, 472, - 472, nil, nil, nil, nil, 472, 472, nil, nil, nil, - 486, 486, 486, 472, 486, 472, 472, 472, 486, 486, - nil, nil, nil, 486, nil, 486, 486, 486, 486, 486, - 486, 486, nil, nil, nil, nil, nil, 486, 486, 486, - 486, 486, 486, 486, nil, nil, 486, nil, nil, nil, - nil, nil, nil, 486, nil, nil, 486, 486, 486, 486, - 486, 486, 486, 486, 486, 486, 486, 486, nil, 486, - 486, nil, 486, 486, 486, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 486, nil, nil, 486, nil, nil, - 486, 486, nil, nil, 486, nil, 486, nil, 486, nil, - 486, nil, nil, 486, nil, nil, nil, nil, nil, 486, - nil, nil, nil, nil, 486, 486, 486, 486, nil, 486, - 486, 486, 486, nil, nil, nil, nil, 486, 486, nil, - nil, nil, 488, 488, 488, 486, 488, 486, 486, 486, - 488, 488, nil, nil, nil, 488, nil, 488, 488, 488, - 488, 488, 488, 488, nil, nil, nil, nil, nil, 488, - 488, 488, 488, 488, 488, 488, nil, nil, 488, nil, - nil, nil, nil, nil, nil, 488, nil, nil, 488, 488, - 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, - nil, 488, 488, nil, 488, 488, 488, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 488, nil, nil, 488, - nil, nil, 488, 488, nil, nil, 488, nil, nil, nil, - 488, nil, 488, nil, nil, 488, nil, nil, nil, nil, - nil, 488, nil, nil, nil, nil, 488, 488, 488, 488, - nil, 488, 488, 488, 488, nil, nil, nil, nil, 488, - 488, nil, nil, nil, 490, 490, 490, 488, 490, 488, - 488, 488, 490, 490, nil, nil, nil, 490, nil, 490, - 490, 490, 490, 490, 490, 490, nil, nil, nil, nil, - nil, 490, 490, 490, 490, 490, 490, 490, nil, nil, - 490, nil, nil, nil, nil, nil, nil, 490, nil, nil, - 490, 490, 490, 490, 490, 490, 490, 490, nil, 490, - 490, 490, nil, 490, 490, nil, 490, 490, 490, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 490, nil, - nil, 490, nil, nil, 490, 490, nil, nil, 490, nil, - nil, nil, nil, nil, 490, nil, nil, nil, nil, nil, - nil, nil, nil, 490, nil, nil, nil, nil, 490, 490, - 490, 490, nil, 490, 490, 490, 490, nil, nil, nil, - nil, 490, 490, nil, nil, nil, nil, nil, nil, 490, - nil, 490, 490, 490, 496, 496, 496, 496, 496, nil, - nil, nil, 496, 496, nil, nil, nil, 496, nil, 496, - 496, 496, 496, 496, 496, 496, nil, nil, nil, nil, - nil, 496, 496, 496, 496, 496, 496, 496, nil, nil, - 496, nil, nil, nil, nil, nil, 496, 496, 496, 496, - 496, 496, 496, 496, 496, 496, 496, 496, nil, 496, - 496, 496, nil, 496, 496, nil, 496, 496, 496, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 496, nil, - nil, 496, nil, nil, 496, 496, nil, nil, 496, nil, - 496, nil, nil, nil, 496, nil, nil, nil, nil, nil, - nil, nil, nil, 496, nil, nil, nil, nil, 496, 496, - 496, 496, nil, 496, 496, 496, 496, nil, nil, nil, - nil, 496, 496, nil, nil, nil, nil, nil, 496, 496, - nil, 496, 496, 496, 504, 504, 504, nil, 504, nil, - nil, nil, 504, 504, nil, nil, nil, 504, nil, 504, - 504, 504, 504, 504, 504, 504, nil, nil, nil, nil, - nil, 504, 504, 504, 504, 504, 504, 504, nil, nil, - 504, nil, nil, nil, nil, nil, nil, 504, nil, nil, - 504, 504, 504, 504, 504, 504, 504, 504, nil, 504, - 504, 504, nil, 504, 504, nil, nil, nil, 504, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 504, nil, - nil, 504, nil, nil, 504, 504, nil, nil, 504, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 504, 504, - 504, 504, nil, 504, 504, 504, 504, nil, nil, nil, - nil, 504, 504, nil, nil, nil, 506, 506, 506, 504, - 506, 504, 504, 504, 506, 506, nil, nil, nil, 506, - nil, 506, 506, 506, 506, 506, 506, 506, nil, nil, - nil, nil, nil, 506, 506, 506, 506, 506, 506, 506, - nil, nil, 506, nil, nil, nil, nil, nil, nil, 506, - nil, nil, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, nil, 506, 506, nil, 506, 506, - 506, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 506, nil, nil, 506, nil, nil, 506, 506, nil, nil, - 506, nil, 506, nil, 506, nil, 506, nil, nil, 506, - nil, nil, nil, nil, nil, 506, nil, nil, nil, nil, - 506, 506, 506, 506, nil, 506, 506, 506, 506, nil, - nil, nil, nil, 506, 506, nil, nil, nil, 512, 512, - 512, 506, 512, 506, 506, 506, 512, 512, nil, nil, - nil, 512, nil, 512, 512, 512, 512, 512, 512, 512, - nil, nil, nil, nil, nil, 512, 512, 512, 512, 512, - 512, 512, nil, nil, 512, nil, nil, nil, nil, nil, - nil, 512, nil, nil, 512, 512, 512, 512, 512, 512, - 512, 512, nil, 512, 512, 512, nil, 512, 512, nil, - nil, nil, 512, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 512, nil, nil, 512, nil, nil, 512, 512, - nil, nil, 512, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 512, 512, 512, 512, nil, 512, 512, 512, - 512, nil, nil, nil, nil, 512, 512, nil, nil, nil, - 515, 515, 515, 512, 515, 512, 512, 512, 515, 515, - nil, nil, nil, 515, nil, 515, 515, 515, 515, 515, - 515, 515, nil, nil, nil, nil, nil, 515, 515, 515, - 515, 515, 515, 515, nil, nil, 515, nil, nil, nil, - nil, nil, nil, 515, nil, nil, 515, 515, 515, 515, - 515, 515, 515, 515, nil, 515, 515, 515, nil, 515, - 515, nil, 515, 515, 515, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 515, nil, nil, 515, nil, nil, - 515, 515, nil, nil, 515, nil, nil, nil, nil, nil, - 515, nil, nil, nil, nil, nil, nil, nil, nil, 515, - nil, nil, nil, nil, 515, 515, 515, 515, nil, 515, - 515, 515, 515, nil, nil, nil, nil, 515, 515, nil, - nil, nil, 516, 516, 516, 515, 516, 515, 515, 515, - 516, 516, nil, nil, nil, 516, nil, 516, 516, 516, - 516, 516, 516, 516, nil, nil, nil, nil, nil, 516, - 516, 516, 516, 516, 516, 516, nil, nil, 516, nil, - nil, nil, nil, nil, nil, 516, nil, nil, 516, 516, - 516, 516, 516, 516, 516, 516, nil, 516, 516, 516, - nil, 516, 516, nil, 516, 516, 516, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 516, nil, nil, 516, - nil, nil, 516, 516, nil, nil, 516, nil, nil, nil, - nil, nil, 516, nil, nil, nil, nil, nil, nil, nil, - nil, 516, nil, nil, nil, nil, 516, 516, 516, 516, - nil, 516, 516, 516, 516, nil, nil, nil, nil, 516, - 516, nil, nil, nil, 520, 520, 520, 516, 520, 516, - 516, 516, 520, 520, nil, nil, nil, 520, nil, 520, - 520, 520, 520, 520, 520, 520, nil, nil, nil, nil, - nil, 520, 520, 520, 520, 520, 520, 520, nil, nil, - 520, nil, nil, nil, nil, nil, nil, 520, nil, nil, - 520, 520, 520, 520, 520, 520, 520, 520, nil, 520, - 520, 520, nil, 520, 520, nil, 520, 520, 520, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 520, nil, - nil, 520, nil, nil, 520, 520, nil, nil, 520, nil, - nil, nil, nil, nil, 520, nil, nil, nil, nil, nil, - nil, nil, nil, 520, nil, nil, nil, nil, 520, 520, - 520, 520, nil, 520, 520, 520, 520, nil, nil, nil, - nil, 520, 520, nil, nil, nil, 526, 526, 526, 520, - 526, 520, 520, 520, 526, 526, nil, nil, nil, 526, - nil, 526, 526, 526, 526, 526, 526, 526, nil, nil, - nil, nil, nil, 526, 526, 526, 526, 526, 526, 526, - nil, nil, 526, nil, nil, nil, nil, nil, nil, 526, - nil, nil, 526, 526, 526, 526, 526, 526, 526, 526, - 526, 526, 526, 526, nil, 526, 526, nil, 526, 526, - 526, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 526, nil, nil, 526, nil, nil, 526, 526, nil, nil, - 526, nil, 526, nil, nil, nil, 526, nil, nil, 526, - nil, nil, nil, nil, nil, 526, nil, nil, nil, nil, - 526, 526, 526, 526, nil, 526, 526, 526, 526, nil, - nil, nil, nil, 526, 526, nil, nil, nil, 529, 529, - 529, 526, 529, 526, 526, 526, 529, 529, nil, nil, - nil, 529, nil, 529, 529, 529, 529, 529, 529, 529, - nil, nil, nil, nil, nil, 529, 529, 529, 529, 529, - 529, 529, nil, nil, 529, nil, nil, nil, nil, nil, - nil, 529, nil, nil, 529, 529, 529, 529, 529, 529, - 529, 529, 529, 529, 529, 529, nil, 529, 529, nil, - 529, 529, 529, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 529, nil, nil, 529, nil, nil, 529, 529, - nil, nil, 529, nil, nil, nil, nil, nil, 529, nil, - nil, 529, nil, nil, nil, nil, nil, 529, nil, nil, - nil, nil, 529, 529, 529, 529, nil, 529, 529, 529, - 529, nil, nil, nil, nil, 529, 529, nil, nil, nil, - 554, 554, 554, 529, 554, 529, 529, 529, 554, 554, - nil, nil, nil, 554, nil, 554, 554, 554, 554, 554, - 554, 554, nil, nil, nil, nil, nil, 554, 554, 554, - 554, 554, 554, 554, nil, nil, 554, nil, nil, nil, - nil, nil, nil, 554, nil, nil, 554, 554, 554, 554, - 554, 554, 554, 554, nil, 554, 554, 554, nil, 554, - 554, nil, 554, 554, 554, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 554, nil, nil, 554, nil, nil, - 554, 554, nil, nil, 554, nil, nil, nil, nil, nil, - 554, nil, nil, nil, nil, nil, nil, nil, nil, 554, - nil, nil, nil, nil, 554, 554, 554, 554, nil, 554, - 554, 554, 554, nil, nil, nil, nil, 554, 554, nil, - nil, nil, 574, 574, 574, 554, 574, 554, 554, 554, - 574, 574, nil, nil, nil, 574, nil, 574, 574, 574, - 574, 574, 574, 574, nil, nil, nil, nil, nil, 574, - 574, 574, 574, 574, 574, 574, nil, nil, 574, nil, - nil, nil, nil, nil, nil, 574, nil, nil, 574, 574, - 574, 574, 574, 574, 574, 574, nil, 574, 574, 574, - nil, 574, 574, nil, 574, 574, 574, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 574, nil, nil, 574, - nil, nil, 574, 574, nil, nil, 574, nil, 574, nil, - nil, nil, 574, nil, nil, nil, nil, nil, nil, nil, - nil, 574, nil, nil, nil, nil, 574, 574, 574, 574, - nil, 574, 574, 574, 574, nil, nil, nil, nil, 574, - 574, nil, nil, nil, 575, 575, 575, 574, 575, 574, - 574, 574, 575, 575, nil, nil, nil, 575, nil, 575, - 575, 575, 575, 575, 575, 575, nil, nil, nil, nil, - nil, 575, 575, 575, 575, 575, 575, 575, nil, nil, - 575, nil, nil, nil, nil, nil, nil, 575, nil, nil, - 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, - 575, 575, nil, 575, 575, nil, 575, 575, 575, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 575, nil, - nil, 575, nil, nil, 575, 575, nil, nil, 575, nil, - 575, nil, 575, nil, 575, nil, nil, 575, nil, nil, - nil, nil, nil, 575, nil, nil, nil, nil, 575, 575, - 575, 575, nil, 575, 575, 575, 575, nil, nil, nil, - nil, 575, 575, nil, nil, nil, 585, 585, 585, 575, - 585, 575, 575, 575, 585, 585, nil, nil, nil, 585, - nil, 585, 585, 585, 585, 585, 585, 585, nil, nil, - nil, nil, nil, 585, 585, 585, 585, 585, 585, 585, - nil, nil, 585, nil, nil, nil, nil, nil, nil, 585, - nil, nil, 585, 585, 585, 585, 585, 585, 585, 585, - 585, 585, 585, 585, nil, 585, 585, nil, 585, 585, - 585, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 585, nil, nil, 585, nil, nil, 585, 585, nil, nil, - 585, nil, 585, nil, 585, nil, 585, nil, nil, 585, - nil, nil, nil, nil, nil, 585, nil, nil, nil, nil, - 585, 585, 585, 585, nil, 585, 585, 585, 585, nil, - nil, nil, nil, 585, 585, nil, nil, nil, 619, 619, - 619, 585, 619, 585, 585, 585, 619, 619, nil, nil, - nil, 619, nil, 619, 619, 619, 619, 619, 619, 619, - nil, nil, nil, nil, nil, 619, 619, 619, 619, 619, - 619, 619, nil, nil, 619, nil, nil, nil, nil, nil, - nil, 619, nil, nil, 619, 619, 619, 619, 619, 619, - 619, 619, nil, 619, 619, 619, nil, 619, 619, nil, - 619, 619, 619, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 619, nil, nil, 619, nil, nil, 619, 619, - nil, nil, 619, nil, 619, nil, nil, nil, 619, nil, - nil, nil, nil, nil, nil, nil, nil, 619, nil, nil, - nil, nil, 619, 619, 619, 619, nil, 619, 619, 619, - 619, nil, nil, nil, nil, 619, 619, nil, nil, nil, - 620, 620, 620, 619, 620, 619, 619, 619, 620, 620, - nil, nil, nil, 620, nil, 620, 620, 620, 620, 620, - 620, 620, nil, nil, nil, nil, nil, 620, 620, 620, - 620, 620, 620, 620, nil, nil, 620, nil, nil, nil, - nil, nil, nil, 620, nil, nil, 620, 620, 620, 620, - 620, 620, 620, 620, nil, 620, 620, 620, nil, 620, - 620, nil, 620, 620, 620, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 620, nil, nil, 620, nil, nil, - 620, 620, nil, nil, 620, nil, nil, nil, nil, nil, - 620, nil, nil, nil, nil, nil, nil, nil, nil, 620, - nil, nil, nil, nil, 620, 620, 620, 620, nil, 620, - 620, 620, 620, nil, nil, nil, nil, 620, 620, nil, - nil, nil, 623, 623, 623, 620, 623, 620, 620, 620, - 623, 623, nil, nil, nil, 623, nil, 623, 623, 623, - 623, 623, 623, 623, nil, nil, nil, nil, nil, 623, - 623, 623, 623, 623, 623, 623, nil, nil, 623, nil, - nil, nil, nil, nil, nil, 623, nil, nil, 623, 623, - 623, 623, 623, 623, 623, 623, 623, 623, 623, 623, - nil, 623, 623, nil, 623, 623, 623, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 623, nil, nil, 623, - nil, nil, 623, 623, nil, nil, 623, nil, 623, nil, - 623, nil, 623, nil, nil, 623, nil, nil, nil, nil, - nil, 623, nil, nil, nil, nil, 623, 623, 623, 623, - nil, 623, 623, 623, 623, nil, nil, nil, nil, 623, - 623, nil, nil, nil, 624, 624, 624, 623, 624, 623, - 623, 623, 624, 624, nil, nil, nil, 624, nil, 624, - 624, 624, 624, 624, 624, 624, nil, nil, nil, nil, - nil, 624, 624, 624, 624, 624, 624, 624, nil, nil, - 624, nil, nil, nil, nil, nil, nil, 624, nil, nil, - 624, 624, 624, 624, 624, 624, 624, 624, 624, 624, - 624, 624, nil, 624, 624, nil, 624, 624, 624, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 624, nil, - nil, 624, nil, nil, 624, 624, nil, nil, 624, nil, - nil, nil, 624, nil, 624, nil, nil, 624, nil, nil, - nil, nil, nil, 624, nil, nil, nil, nil, 624, 624, - 624, 624, nil, 624, 624, 624, 624, nil, nil, nil, - nil, 624, 624, nil, nil, nil, 625, 625, 625, 624, - 625, 624, 624, 624, 625, 625, nil, nil, nil, 625, - nil, 625, 625, 625, 625, 625, 625, 625, nil, nil, - nil, nil, nil, 625, 625, 625, 625, 625, 625, 625, - nil, nil, 625, nil, nil, nil, nil, nil, nil, 625, - nil, nil, 625, 625, 625, 625, 625, 625, 625, 625, - nil, 625, 625, 625, nil, 625, 625, nil, 625, 625, - 625, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 625, nil, nil, 625, nil, nil, 625, 625, nil, nil, - 625, nil, nil, nil, nil, nil, 625, nil, nil, nil, - nil, nil, nil, nil, nil, 625, nil, nil, nil, nil, - 625, 625, 625, 625, nil, 625, 625, 625, 625, nil, - nil, nil, nil, 625, 625, nil, nil, nil, 626, 626, - 626, 625, 626, 625, 625, 625, 626, 626, nil, nil, - nil, 626, nil, 626, 626, 626, 626, 626, 626, 626, - nil, nil, nil, nil, nil, 626, 626, 626, 626, 626, - 626, 626, nil, nil, 626, nil, nil, nil, nil, nil, - nil, 626, nil, nil, 626, 626, 626, 626, 626, 626, - 626, 626, nil, 626, 626, 626, nil, 626, 626, nil, - 626, 626, 626, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 626, nil, nil, 626, nil, nil, 626, 626, - nil, nil, 626, nil, nil, nil, nil, nil, 626, nil, - nil, nil, nil, nil, nil, nil, nil, 626, nil, nil, - nil, nil, 626, 626, 626, 626, nil, 626, 626, 626, - 626, nil, nil, nil, nil, 626, 626, nil, nil, nil, - 630, 630, 630, 626, 630, 626, 626, 626, 630, 630, - nil, nil, nil, 630, nil, 630, 630, 630, 630, 630, - 630, 630, nil, nil, nil, nil, nil, 630, 630, 630, - 630, 630, 630, 630, nil, nil, 630, nil, nil, nil, - nil, nil, nil, 630, nil, nil, 630, 630, 630, 630, - 630, 630, 630, 630, nil, 630, 630, 630, nil, 630, - 630, nil, 630, 630, 630, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 630, nil, nil, 630, nil, nil, - 630, 630, nil, nil, 630, nil, nil, nil, nil, nil, - 630, nil, nil, nil, nil, nil, nil, nil, nil, 630, - nil, nil, nil, nil, 630, 630, 630, 630, nil, 630, - 630, 630, 630, nil, nil, nil, nil, 630, 630, nil, - nil, nil, 631, 631, 631, 630, 631, 630, 630, 630, - 631, 631, nil, nil, nil, 631, nil, 631, 631, 631, - 631, 631, 631, 631, nil, nil, nil, nil, nil, 631, - 631, 631, 631, 631, 631, 631, nil, nil, 631, nil, - nil, nil, nil, nil, nil, 631, nil, nil, 631, 631, - 631, 631, 631, 631, 631, 631, nil, 631, 631, 631, - nil, 631, 631, nil, 631, 631, 631, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 631, nil, nil, 631, - nil, nil, 631, 631, nil, nil, 631, nil, nil, nil, - nil, nil, 631, nil, nil, nil, nil, nil, nil, nil, - nil, 631, nil, nil, nil, nil, 631, 631, 631, 631, - nil, 631, 631, 631, 631, nil, nil, nil, nil, 631, - 631, nil, nil, nil, 634, 634, 634, 631, 634, 631, - 631, 631, 634, 634, nil, nil, nil, 634, nil, 634, - 634, 634, 634, 634, 634, 634, nil, nil, nil, nil, - nil, 634, 634, 634, 634, 634, 634, 634, nil, nil, - 634, nil, nil, nil, nil, nil, nil, 634, nil, nil, - 634, 634, 634, 634, 634, 634, 634, 634, nil, 634, - 634, 634, nil, 634, 634, nil, 634, 634, 634, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 634, nil, - nil, 634, nil, nil, 634, 634, nil, nil, 634, nil, - nil, nil, nil, nil, 634, nil, nil, nil, nil, nil, - nil, nil, nil, 634, nil, nil, nil, nil, 634, 634, - 634, 634, nil, 634, 634, 634, 634, nil, nil, nil, - nil, 634, 634, nil, nil, nil, 635, 635, 635, 634, - 635, 634, 634, 634, 635, 635, nil, nil, nil, 635, - nil, 635, 635, 635, 635, 635, 635, 635, nil, nil, - nil, nil, nil, 635, 635, 635, 635, 635, 635, 635, - nil, nil, 635, nil, nil, nil, nil, nil, nil, 635, - nil, nil, 635, 635, 635, 635, 635, 635, 635, 635, - nil, 635, 635, 635, nil, 635, 635, nil, 635, 635, - 635, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 635, nil, nil, 635, nil, nil, 635, 635, nil, nil, - 635, nil, nil, nil, nil, nil, 635, nil, nil, nil, - nil, nil, nil, nil, nil, 635, nil, nil, nil, nil, - 635, 635, 635, 635, nil, 635, 635, 635, 635, nil, - nil, nil, nil, 635, 635, nil, nil, nil, 659, 659, - 659, 635, 659, 635, 635, 635, 659, 659, nil, nil, - nil, 659, nil, 659, 659, 659, 659, 659, 659, 659, - nil, nil, nil, nil, nil, 659, 659, 659, 659, 659, - 659, 659, nil, nil, 659, nil, nil, nil, nil, nil, - nil, 659, nil, nil, 659, 659, 659, 659, 659, 659, - 659, 659, nil, 659, 659, 659, nil, 659, 659, nil, - 659, 659, 659, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 659, nil, nil, 659, nil, nil, 659, 659, - nil, nil, 659, nil, nil, nil, nil, nil, 659, nil, - nil, nil, nil, nil, nil, nil, nil, 659, nil, nil, - nil, nil, 659, 659, 659, 659, nil, 659, 659, 659, - 659, nil, nil, nil, nil, 659, 659, nil, nil, nil, - 662, 662, 662, 659, 662, 659, 659, 659, 662, 662, - nil, nil, nil, 662, nil, 662, 662, 662, 662, 662, - 662, 662, nil, nil, nil, nil, nil, 662, 662, 662, - 662, 662, 662, 662, nil, nil, 662, nil, nil, nil, - nil, nil, nil, 662, nil, nil, 662, 662, 662, 662, - 662, 662, 662, 662, nil, 662, 662, 662, nil, 662, - 662, nil, 662, 662, 662, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 662, nil, nil, 662, nil, nil, - 662, 662, nil, nil, 662, nil, nil, nil, nil, nil, - 662, nil, nil, nil, nil, nil, nil, nil, nil, 662, - nil, nil, nil, nil, 662, 662, 662, 662, nil, 662, - 662, 662, 662, nil, nil, nil, nil, 662, 662, nil, - nil, nil, 666, 666, 666, 662, 666, 662, 662, 662, - 666, 666, nil, nil, nil, 666, nil, 666, 666, 666, - 666, 666, 666, 666, nil, nil, nil, nil, nil, 666, - 666, 666, 666, 666, 666, 666, nil, nil, 666, nil, - nil, nil, nil, nil, nil, 666, nil, nil, 666, 666, - 666, 666, 666, 666, 666, 666, nil, 666, 666, 666, - nil, 666, 666, nil, nil, nil, 666, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 666, nil, nil, 666, - nil, nil, 666, 666, nil, nil, 666, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 666, 666, 666, 666, - nil, 666, 666, 666, 666, nil, nil, nil, nil, 666, - 666, nil, nil, nil, 677, 677, 677, 666, 677, 666, - 666, 666, 677, 677, nil, nil, nil, 677, nil, 677, - 677, 677, 677, 677, 677, 677, nil, nil, nil, nil, - nil, 677, 677, 677, 677, 677, 677, 677, nil, nil, - 677, nil, nil, nil, nil, nil, nil, 677, nil, nil, - 677, 677, 677, 677, 677, 677, 677, 677, nil, 677, - 677, 677, nil, 677, 677, nil, nil, nil, 677, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 677, nil, - nil, 677, nil, nil, 677, 677, nil, nil, 677, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 677, 677, - 677, 677, nil, 677, 677, 677, 677, nil, nil, nil, - nil, 677, 677, nil, nil, nil, 682, 682, 682, 677, - 682, 677, 677, 677, 682, 682, nil, nil, nil, 682, - nil, 682, 682, 682, 682, 682, 682, 682, nil, nil, - nil, nil, nil, 682, 682, 682, 682, 682, 682, 682, - nil, nil, 682, nil, nil, nil, nil, nil, nil, 682, - nil, nil, 682, 682, 682, 682, 682, 682, 682, 682, - nil, 682, 682, 682, nil, 682, 682, nil, 682, 682, - 682, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 682, nil, nil, 682, nil, nil, 682, 682, nil, nil, - 682, nil, 682, nil, nil, nil, 682, nil, nil, nil, - nil, nil, nil, nil, nil, 682, nil, nil, nil, nil, - 682, 682, 682, 682, nil, 682, 682, 682, 682, nil, - nil, nil, nil, 682, 682, nil, nil, nil, 699, 699, - 699, 682, 699, 682, 682, 682, 699, 699, nil, nil, - nil, 699, nil, 699, 699, 699, 699, 699, 699, 699, - nil, nil, nil, nil, nil, 699, 699, 699, 699, 699, - 699, 699, nil, nil, 699, nil, nil, nil, nil, nil, - nil, 699, nil, nil, 699, 699, 699, 699, 699, 699, - 699, 699, nil, 699, 699, 699, nil, 699, 699, nil, - 699, 699, 699, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 699, nil, nil, 699, nil, nil, 699, 699, - nil, nil, 699, nil, nil, nil, nil, nil, 699, nil, - nil, nil, nil, nil, nil, nil, nil, 699, nil, nil, - nil, nil, 699, 699, 699, 699, nil, 699, 699, 699, - 699, nil, nil, nil, nil, 699, 699, nil, nil, nil, - 725, 725, 725, 699, 725, 699, 699, 699, 725, 725, - nil, nil, nil, 725, nil, 725, 725, 725, 725, 725, - 725, 725, nil, nil, nil, nil, nil, 725, 725, 725, - 725, 725, 725, 725, nil, nil, 725, nil, nil, nil, - nil, nil, nil, 725, nil, nil, 725, 725, 725, 725, - 725, 725, 725, 725, nil, 725, 725, 725, nil, 725, - 725, nil, 725, 725, 725, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 725, nil, nil, 725, nil, nil, - 725, 725, nil, nil, 725, nil, nil, nil, nil, nil, - 725, nil, nil, nil, nil, nil, nil, nil, nil, 725, - nil, nil, nil, nil, 725, 725, 725, 725, nil, 725, - 725, 725, 725, nil, nil, nil, nil, 725, 725, nil, - nil, nil, 731, 731, 731, 725, 731, 725, 725, 725, - 731, 731, nil, nil, nil, 731, nil, 731, 731, 731, - 731, 731, 731, 731, nil, nil, nil, nil, nil, 731, - 731, 731, 731, 731, 731, 731, nil, nil, 731, nil, - nil, nil, nil, nil, nil, 731, nil, nil, 731, 731, - 731, 731, 731, 731, 731, 731, nil, 731, 731, 731, - nil, 731, 731, nil, 731, 731, 731, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 731, nil, nil, 731, - nil, nil, 731, 731, nil, nil, 731, nil, nil, nil, - nil, nil, 731, nil, nil, nil, nil, nil, nil, nil, - nil, 731, nil, nil, nil, nil, 731, 731, 731, 731, - nil, 731, 731, 731, 731, nil, nil, nil, nil, 731, - 731, nil, nil, nil, 754, 754, 754, 731, 754, 731, - 731, 731, 754, 754, nil, nil, nil, 754, nil, 754, - 754, 754, 754, 754, 754, 754, nil, nil, nil, nil, - nil, 754, 754, 754, 754, 754, 754, 754, nil, nil, - 754, nil, nil, nil, nil, nil, nil, 754, nil, nil, - 754, 754, 754, 754, 754, 754, 754, 754, nil, 754, - 754, 754, nil, 754, 754, nil, 754, 754, 754, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 754, nil, - nil, 754, nil, nil, 754, 754, nil, nil, 754, nil, - nil, nil, nil, nil, 754, nil, nil, nil, nil, nil, - nil, nil, nil, 754, nil, nil, nil, nil, 754, 754, - 754, 754, nil, 754, 754, 754, 754, nil, nil, nil, - nil, 754, 754, nil, nil, nil, 756, 756, 756, 754, - 756, 754, 754, 754, 756, 756, nil, nil, nil, 756, - nil, 756, 756, 756, 756, 756, 756, 756, nil, nil, - nil, nil, nil, 756, 756, 756, 756, 756, 756, 756, - nil, nil, 756, nil, nil, nil, nil, nil, nil, 756, - nil, nil, 756, 756, 756, 756, 756, 756, 756, 756, - nil, 756, 756, 756, nil, 756, 756, nil, 756, 756, - 756, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 756, nil, nil, 756, nil, nil, 756, 756, nil, nil, - 756, nil, nil, nil, nil, nil, 756, nil, nil, nil, - nil, nil, nil, nil, nil, 756, nil, nil, nil, nil, - 756, 756, 756, 756, nil, 756, 756, 756, 756, nil, - nil, nil, nil, 756, 756, nil, nil, nil, 770, 770, - 770, 756, 770, 756, 756, 756, 770, 770, nil, nil, - nil, 770, nil, 770, 770, 770, 770, 770, 770, 770, - nil, nil, nil, nil, nil, 770, 770, 770, 770, 770, - 770, 770, nil, nil, 770, nil, nil, nil, nil, nil, - nil, 770, nil, nil, 770, 770, 770, 770, 770, 770, - 770, 770, nil, 770, 770, 770, nil, 770, 770, nil, - 770, 770, 770, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 770, nil, nil, 770, nil, nil, 770, 770, - nil, nil, 770, nil, nil, nil, nil, nil, 770, nil, - nil, nil, nil, nil, nil, nil, nil, 770, nil, nil, - nil, nil, 770, 770, 770, 770, nil, 770, 770, 770, - 770, nil, nil, nil, nil, 770, 770, nil, nil, nil, - 771, 771, 771, 770, 771, 770, 770, 770, 771, 771, - nil, nil, nil, 771, nil, 771, 771, 771, 771, 771, - 771, 771, nil, nil, nil, nil, nil, 771, 771, 771, - 771, 771, 771, 771, nil, nil, 771, nil, nil, nil, - nil, nil, nil, 771, nil, nil, 771, 771, 771, 771, - 771, 771, 771, 771, nil, 771, 771, 771, nil, 771, - 771, nil, 771, 771, 771, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 771, nil, nil, 771, nil, nil, - 771, 771, nil, nil, 771, nil, nil, nil, nil, nil, - 771, nil, nil, nil, nil, nil, nil, nil, nil, 771, - nil, nil, nil, nil, 771, 771, 771, 771, nil, 771, - 771, 771, 771, nil, nil, nil, nil, 771, 771, nil, - nil, nil, 772, 772, 772, 771, 772, 771, 771, 771, - 772, 772, nil, nil, nil, 772, nil, 772, 772, 772, - 772, 772, 772, 772, nil, nil, nil, nil, nil, 772, - 772, 772, 772, 772, 772, 772, nil, nil, 772, nil, - nil, nil, nil, nil, nil, 772, nil, nil, 772, 772, - 772, 772, 772, 772, 772, 772, nil, 772, 772, 772, - nil, 772, 772, nil, 772, 772, 772, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 772, nil, nil, 772, - nil, nil, 772, 772, nil, nil, 772, nil, nil, nil, - nil, nil, 772, nil, nil, nil, nil, nil, nil, nil, - nil, 772, nil, nil, nil, nil, 772, 772, 772, 772, - nil, 772, 772, 772, 772, nil, nil, nil, nil, 772, - 772, nil, nil, nil, 773, 773, 773, 772, 773, 772, - 772, 772, 773, 773, nil, nil, nil, 773, nil, 773, - 773, 773, 773, 773, 773, 773, nil, nil, nil, nil, - nil, 773, 773, 773, 773, 773, 773, 773, nil, nil, - 773, nil, nil, nil, nil, nil, nil, 773, nil, nil, - 773, 773, 773, 773, 773, 773, 773, 773, nil, 773, - 773, 773, nil, 773, 773, nil, 773, 773, 773, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 773, nil, - nil, 773, nil, nil, 773, 773, nil, nil, 773, nil, - nil, nil, nil, nil, 773, nil, nil, nil, nil, nil, - nil, nil, nil, 773, nil, nil, nil, nil, 773, 773, - 773, 773, nil, 773, 773, 773, 773, nil, nil, nil, - nil, 773, 773, nil, nil, nil, 787, 787, 787, 773, - 787, 773, 773, 773, 787, 787, nil, nil, nil, 787, - nil, 787, 787, 787, 787, 787, 787, 787, nil, nil, - nil, nil, nil, 787, 787, 787, 787, 787, 787, 787, - nil, nil, 787, nil, nil, nil, nil, nil, nil, 787, - nil, nil, 787, 787, 787, 787, 787, 787, 787, 787, - nil, 787, 787, 787, nil, 787, 787, nil, nil, nil, - 787, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 787, nil, nil, 787, nil, nil, 787, 787, nil, nil, - 787, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 787, 787, 787, 787, nil, 787, 787, 787, 787, nil, - nil, nil, nil, 787, 787, nil, nil, nil, 837, 837, - 837, 787, 837, 787, 787, 787, 837, 837, nil, nil, - nil, 837, nil, 837, 837, 837, 837, 837, 837, 837, - nil, nil, nil, nil, nil, 837, 837, 837, 837, 837, - 837, 837, nil, nil, 837, nil, nil, nil, nil, nil, - nil, 837, nil, nil, 837, 837, 837, 837, 837, 837, - 837, 837, nil, 837, 837, 837, nil, 837, 837, nil, - 837, 837, 837, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 837, nil, nil, 837, nil, nil, 837, 837, - nil, nil, 837, nil, nil, nil, nil, nil, 837, nil, - nil, nil, nil, nil, nil, nil, nil, 837, nil, nil, - nil, nil, 837, 837, 837, 837, nil, 837, 837, 837, - 837, nil, nil, nil, nil, 837, 837, nil, nil, nil, - 842, 842, 842, 837, 842, 837, 837, 837, 842, 842, - nil, nil, nil, 842, nil, 842, 842, 842, 842, 842, - 842, 842, nil, nil, nil, nil, nil, 842, 842, 842, - 842, 842, 842, 842, nil, nil, 842, nil, nil, nil, - nil, nil, nil, 842, nil, nil, 842, 842, 842, 842, - 842, 842, 842, 842, nil, 842, 842, 842, nil, 842, - 842, nil, 842, 842, 842, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 842, nil, nil, 842, nil, nil, - 842, 842, nil, nil, 842, nil, 842, nil, nil, nil, - 842, nil, nil, nil, nil, nil, nil, nil, nil, 842, - nil, nil, nil, nil, 842, 842, 842, 842, nil, 842, - 842, 842, 842, nil, nil, nil, nil, 842, 842, nil, - nil, nil, 859, 859, 859, 842, 859, 842, 842, 842, - 859, 859, nil, nil, nil, 859, nil, 859, 859, 859, - 859, 859, 859, 859, nil, nil, nil, nil, nil, 859, - 859, 859, 859, 859, 859, 859, nil, nil, 859, nil, - nil, nil, nil, nil, nil, 859, nil, nil, 859, 859, - 859, 859, 859, 859, 859, 859, 859, 859, 859, 859, - nil, 859, 859, nil, 859, 859, 859, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 859, nil, nil, 859, - nil, nil, 859, 859, nil, nil, 859, nil, nil, nil, - 859, nil, 859, nil, nil, 859, nil, nil, nil, nil, - nil, 859, nil, nil, nil, nil, 859, 859, 859, 859, - nil, 859, 859, 859, 859, nil, nil, nil, nil, 859, - 859, nil, nil, nil, 860, 860, 860, 859, 860, 859, - 859, 859, 860, 860, nil, nil, nil, 860, nil, 860, - 860, 860, 860, 860, 860, 860, nil, nil, nil, nil, - nil, 860, 860, 860, 860, 860, 860, 860, nil, nil, - 860, nil, nil, nil, nil, nil, nil, 860, nil, nil, - 860, 860, 860, 860, 860, 860, 860, 860, nil, 860, - 860, 860, nil, 860, 860, nil, 860, 860, 860, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 860, nil, - nil, 860, nil, nil, 860, 860, nil, nil, 860, nil, - nil, nil, nil, nil, 860, nil, nil, nil, nil, nil, - nil, nil, nil, 860, nil, nil, nil, nil, 860, 860, - 860, 860, nil, 860, 860, 860, 860, nil, nil, nil, - nil, 860, 860, nil, nil, nil, 874, 874, 874, 860, - 874, 860, 860, 860, 874, 874, nil, nil, nil, 874, - nil, 874, 874, 874, 874, 874, 874, 874, nil, nil, - nil, nil, nil, 874, 874, 874, 874, 874, 874, 874, - nil, nil, 874, nil, nil, nil, nil, nil, nil, 874, - nil, nil, 874, 874, 874, 874, 874, 874, 874, 874, - nil, 874, 874, 874, nil, 874, 874, nil, nil, nil, - 874, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 874, nil, nil, 874, nil, nil, 874, 874, nil, nil, - 874, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 874, 874, 874, 874, nil, 874, 874, 874, 874, nil, - nil, nil, nil, 874, 874, nil, nil, nil, 886, 886, - 886, 874, 886, 874, 874, 874, 886, 886, nil, nil, - nil, 886, nil, 886, 886, 886, 886, 886, 886, 886, - nil, nil, nil, nil, nil, 886, 886, 886, 886, 886, - 886, 886, nil, nil, 886, nil, nil, nil, nil, nil, - nil, 886, nil, nil, 886, 886, 886, 886, 886, 886, - 886, 886, nil, 886, 886, 886, nil, 886, 886, nil, - nil, nil, 886, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 886, nil, nil, 886, nil, nil, 886, 886, - nil, nil, 886, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 886, 886, 886, 886, nil, 886, 886, 886, - 886, nil, nil, nil, nil, 886, 886, nil, nil, nil, - 923, 923, 923, 886, 923, 886, 886, 886, 923, 923, - nil, nil, nil, 923, nil, 923, 923, 923, 923, 923, - 923, 923, nil, nil, nil, nil, nil, 923, 923, 923, - 923, 923, 923, 923, nil, nil, 923, nil, nil, nil, - nil, nil, nil, 923, nil, nil, 923, 923, 923, 923, - 923, 923, 923, 923, nil, 923, 923, 923, nil, 923, - 923, nil, 923, 923, 923, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 923, nil, nil, 923, nil, nil, - 923, 923, nil, nil, 923, nil, nil, nil, nil, nil, - 923, nil, nil, nil, nil, nil, nil, nil, nil, 923, - nil, nil, nil, nil, 923, 923, 923, 923, nil, 923, - 923, 923, 923, nil, nil, nil, nil, 923, 923, nil, - nil, nil, 985, 985, 985, 923, 985, 923, 923, 923, - 985, 985, nil, nil, nil, 985, nil, 985, 985, 985, - 985, 985, 985, 985, nil, nil, nil, nil, nil, 985, - 985, 985, 985, 985, 985, 985, nil, nil, 985, nil, - nil, nil, nil, nil, nil, 985, nil, nil, 985, 985, - 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, - nil, 985, 985, nil, 985, 985, 985, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 985, nil, nil, 985, - nil, nil, 985, 985, nil, nil, 985, nil, 985, nil, - 985, nil, 985, nil, nil, 985, nil, nil, nil, nil, - nil, 985, nil, nil, nil, nil, 985, 985, 985, 985, - nil, 985, 985, 985, 985, nil, nil, nil, nil, 985, - 985, nil, nil, nil, nil, 56, nil, 985, nil, 985, - 985, 985, 56, 56, 56, nil, nil, 56, 56, 56, - nil, 56, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 56, 56, 56, nil, nil, nil, nil, nil, nil, - nil, 56, 56, nil, 56, 56, 56, 56, 56, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 56, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 56, 56, nil, nil, 56, 56, - 56, nil, nil, 56, nil, nil, 56, nil, nil, 56, - 56, nil, 56, nil, 56, nil, 56, nil, 56, 56, - nil, 56, 56, 56, 56, 56, nil, 56, nil, 56, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 56, nil, nil, 56, 56, 56, 56, - 424, 56, nil, 56, nil, nil, nil, 424, 424, 424, - nil, nil, 424, 424, 424, nil, 424, nil, nil, nil, - nil, nil, nil, nil, nil, 424, 424, 424, 424, nil, - nil, nil, nil, nil, nil, nil, 424, 424, nil, 424, - 424, 424, 424, 424, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 424, 424, 424, - 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, - 424, nil, nil, 424, 424, 424, nil, nil, 424, nil, - nil, 424, nil, nil, 424, 424, nil, 424, nil, 424, - nil, 424, nil, 424, 424, nil, 424, 424, 424, 424, - 424, nil, 424, 424, 424, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 424, nil, - nil, 424, 424, 424, 424, 425, 424, nil, 424, nil, - nil, nil, 425, 425, 425, nil, nil, 425, 425, 425, - nil, 425, nil, nil, nil, nil, nil, nil, nil, nil, - 425, 425, 425, 425, nil, nil, nil, nil, nil, nil, - nil, 425, 425, nil, 425, 425, 425, 425, 425, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 425, 425, 425, 425, 425, 425, 425, 425, - 425, 425, 425, 425, 425, 425, nil, nil, 425, 425, - 425, nil, nil, 425, nil, nil, 425, nil, nil, 425, - 425, nil, 425, nil, 425, nil, 425, nil, 425, 425, - nil, 425, 425, 425, 425, 425, nil, 425, 425, 425, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 425, nil, nil, 425, 425, 425, 425, - 27, 425, nil, 425, nil, nil, nil, 27, 27, 27, - nil, nil, 27, 27, 27, nil, 27, nil, nil, nil, - nil, nil, nil, nil, nil, 27, 27, 27, nil, nil, - nil, nil, nil, nil, nil, nil, 27, 27, nil, 27, - 27, 27, 27, 27, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 27, 27, 27, - 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, - 27, nil, nil, 27, 27, 27, nil, nil, 27, nil, - 27, 27, nil, nil, 27, 27, nil, 27, nil, 27, - nil, 27, nil, 27, 27, nil, 27, 27, 27, 27, - 27, 28, 27, 27, 27, nil, nil, nil, 28, 28, - 28, nil, nil, 28, 28, 28, nil, 28, 27, nil, - nil, 27, 27, nil, 27, nil, 27, 28, 28, nil, - nil, nil, nil, nil, nil, nil, nil, 28, 28, nil, - 28, 28, 28, 28, 28, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, nil, nil, 28, 28, 28, nil, nil, 28, - nil, 28, 28, nil, nil, 28, 28, nil, 28, nil, - 28, nil, 28, nil, 28, 28, nil, 28, 28, 28, - 28, 28, nil, 28, 415, 28, nil, nil, nil, nil, - nil, 415, 415, 415, nil, nil, 415, 415, 415, 28, - 415, nil, 28, 28, nil, 28, nil, 28, nil, 415, - 415, 415, nil, nil, nil, nil, nil, nil, nil, nil, - 415, 415, nil, 415, 415, 415, 415, 415, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 415, 415, 415, 415, 415, 415, 415, 415, 415, - 415, 415, 415, 415, 415, nil, nil, 415, 415, 415, - nil, nil, 415, nil, 415, 415, nil, nil, 415, 415, - nil, 415, nil, 415, nil, 415, nil, 415, 415, nil, - 415, 415, 415, 415, 415, nil, 415, 415, 415, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 415, nil, 474, 415, 415, nil, 415, nil, - 415, 474, 474, 474, nil, nil, 474, 474, 474, 646, - 474, 646, 646, 646, 646, 646, nil, nil, nil, 474, - 474, nil, nil, nil, nil, 646, nil, nil, nil, nil, - 474, 474, nil, 474, 474, 474, 474, 474, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 646, 336, nil, - 336, 336, 336, 336, 336, nil, 646, 646, 646, 646, - nil, nil, nil, 646, 336, 534, nil, 534, 534, 534, - 534, 534, 474, nil, nil, nil, nil, nil, nil, 474, - nil, 534, nil, nil, 474, 474, 336, 336, nil, 646, - nil, nil, nil, nil, nil, 336, 336, 336, 336, nil, - nil, nil, 336, 534, nil, nil, nil, 474, 474, nil, - nil, nil, 534, 534, 534, 534, nil, nil, nil, 534, - nil, nil, 474, nil, nil, 474, nil, nil, nil, nil, - 474, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, nil, nil, nil, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, nil, nil, - nil, nil, nil, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, nil, 8, nil, nil, nil, nil, nil, - nil, nil, nil, 8, 8, nil, 8, 8, 8, 8, - 8, 8, 8, nil, nil, 8, 8, nil, nil, nil, - 8, 8, 8, 8, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 8, 8, nil, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, nil, nil, 8, 8, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 8, - 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, - 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, - 9, 9, 9, 9, nil, nil, nil, 9, 9, 9, - 9, 9, 9, 9, 9, 9, 9, nil, nil, nil, - nil, nil, 9, 9, 9, 9, 9, 9, 9, 9, - 9, nil, nil, 9, nil, nil, nil, nil, nil, nil, - nil, nil, 9, 9, nil, 9, 9, 9, 9, 9, - 9, 9, nil, nil, 9, 9, nil, nil, nil, 9, - 9, 9, 9, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 9, 9, nil, 9, - 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, - 9, nil, nil, 9, 9, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 9, 395, - 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, - 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, - 395, 395, 395, nil, nil, nil, 395, 395, 395, 395, - 395, 395, 395, 395, 395, 395, nil, nil, nil, nil, - nil, 395, 395, 395, 395, 395, 395, 395, 395, 395, - nil, nil, 395, nil, nil, nil, nil, nil, nil, nil, - nil, 395, 395, nil, 395, 395, 395, 395, 395, 395, - 395, nil, nil, 395, 395, nil, nil, nil, 395, 395, - 395, 395, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 395, 395, nil, 395, 395, - 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, - nil, nil, 395, 395, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 395, 616, 616, - 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, - 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, - 616, 616, nil, nil, nil, 616, 616, 616, 616, 616, - 616, 616, 616, 616, 616, nil, nil, nil, nil, nil, - 616, 616, 616, 616, 616, 616, 616, 616, 616, nil, - nil, 616, nil, nil, nil, nil, nil, nil, nil, nil, - 616, 616, nil, 616, 616, 616, 616, 616, 616, 616, - nil, nil, 616, 616, nil, nil, nil, 616, 616, 616, - 616, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 616, 616, nil, 616, 616, 616, - 616, 616, 616, 616, 616, 616, 616, 616, 616, nil, - nil, 616, 616, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 616, 71, 71, 71, - 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, - 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, - 71, nil, nil, nil, 71, 71, 71, 71, 71, 71, - 71, 71, 71, 71, nil, nil, nil, nil, nil, 71, - 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, - 71, nil, 71, nil, nil, nil, nil, nil, nil, 71, - 71, nil, 71, 71, 71, 71, 71, 71, 71, nil, - nil, 71, 71, nil, nil, nil, 71, 71, 71, 71, - nil, nil, nil, nil, nil, 71, nil, nil, nil, nil, - nil, nil, nil, 71, 71, nil, 71, 71, 71, 71, - 71, 71, 71, 71, 71, 71, 71, 71, nil, nil, - 71, 738, 738, 738, 738, 738, 738, 738, 738, 738, - 738, 738, 738, 738, 738, 738, 738, 738, 738, 738, - 738, 738, 738, 738, 738, nil, nil, nil, 738, 738, - 738, 738, 738, 738, 738, 738, 738, 738, nil, nil, - nil, nil, nil, 738, 738, 738, 738, 738, 738, 738, - 738, 738, nil, nil, 738, nil, nil, nil, nil, nil, - nil, nil, nil, 738, 738, nil, 738, 738, 738, 738, - 738, 738, 738, nil, nil, 738, 738, nil, nil, nil, - 738, 738, 738, 738, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 738, 738, nil, - 738, 738, 738, 738, 738, 738, 738, 738, 738, 738, - 738, 738, 210, 210, 738, nil, 210, nil, nil, nil, - nil, nil, nil, nil, nil, 210, 210, nil, 210, 210, - 210, 210, 210, 210, 210, nil, nil, 210, 210, nil, - nil, nil, 210, 210, 210, 210, nil, nil, nil, nil, - nil, 210, nil, nil, nil, nil, nil, nil, nil, 210, - 210, nil, 210, 210, 210, 210, 210, 210, 210, 210, - 210, 210, 210, 210, 211, 211, 210, nil, 211, nil, - nil, nil, nil, nil, nil, nil, nil, 211, 211, nil, - 211, 211, 211, 211, 211, 211, 211, nil, nil, 211, - 211, nil, nil, nil, 211, 211, 211, 211, nil, nil, - nil, nil, nil, 211, nil, nil, nil, nil, nil, nil, - nil, 211, 211, nil, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 211, 211, 211, 259, 259, 211, nil, - 259, nil, nil, nil, nil, nil, nil, nil, nil, 259, - 259, nil, 259, 259, 259, 259, 259, 259, 259, nil, - nil, 259, 259, nil, nil, nil, 259, 259, 259, 259, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 259, 259, nil, 259, 259, 259, 259, - 259, 259, 259, 259, 259, 259, 259, 259, 440, 440, - 259, nil, 440, nil, nil, nil, nil, nil, nil, nil, - nil, 440, 440, nil, 440, 440, 440, 440, 440, 440, - 440, nil, nil, 440, 440, nil, nil, nil, 440, 440, - 440, 440, nil, nil, nil, nil, nil, 440, nil, nil, - nil, nil, nil, nil, nil, 440, 440, nil, 440, 440, - 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, - 441, 441, 440, nil, 441, nil, nil, nil, nil, nil, - nil, nil, nil, 441, 441, nil, 441, 441, 441, 441, - 441, 441, 441, nil, nil, 441, 441, nil, nil, nil, - 441, 441, 441, 441, nil, nil, nil, nil, nil, 441, - nil, nil, nil, nil, nil, nil, nil, 441, 441, nil, - 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, - 441, 441, 507, 507, 441, nil, 507, nil, nil, nil, - nil, nil, nil, nil, nil, 507, 507, nil, 507, 507, - 507, 507, 507, 507, 507, nil, nil, 507, 507, nil, - nil, nil, 507, 507, 507, 507, nil, nil, nil, nil, - nil, 507, nil, nil, nil, nil, nil, nil, nil, 507, - 507, nil, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 508, 508, 507, nil, 508, nil, - nil, nil, nil, nil, nil, nil, nil, 508, 508, nil, - 508, 508, 508, 508, 508, 508, 508, nil, nil, 508, - 508, nil, nil, nil, 508, 508, 508, 508, nil, nil, - nil, nil, nil, 508, nil, nil, nil, nil, nil, nil, - nil, 508, 508, nil, 508, 508, 508, 508, 508, 508, - 508, 508, 508, 508, 508, 508, 517, 517, 508, nil, - 517, nil, nil, nil, nil, nil, nil, nil, nil, 517, - 517, nil, 517, 517, 517, 517, 517, 517, 517, nil, - nil, 517, 517, nil, nil, nil, 517, 517, 517, 517, - nil, nil, nil, nil, nil, 517, nil, nil, nil, nil, - nil, nil, nil, 517, 517, nil, 517, 517, 517, 517, - 517, 517, 517, 517, 517, 517, 517, 517, 518, 518, - 517, nil, 518, nil, nil, nil, nil, nil, nil, nil, - nil, 518, 518, nil, 518, 518, 518, 518, 518, 518, - 518, nil, nil, 518, 518, nil, nil, nil, 518, 518, - 518, 518, nil, nil, nil, nil, nil, 518, nil, nil, - nil, nil, nil, nil, nil, 518, 518, nil, 518, 518, - 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, - 576, 576, 518, nil, 576, nil, nil, nil, nil, nil, - nil, nil, nil, 576, 576, nil, 576, 576, 576, 576, - 576, 576, 576, nil, nil, 576, 576, nil, nil, nil, - 576, 576, 576, 576, nil, nil, nil, nil, nil, 576, - nil, nil, nil, nil, nil, nil, nil, 576, 576, nil, - 576, 576, 576, 576, 576, 576, 576, 576, 576, 576, - 576, 576, 577, 577, 576, nil, 577, nil, nil, nil, - nil, nil, nil, nil, nil, 577, 577, nil, 577, 577, - 577, 577, 577, 577, 577, nil, nil, 577, 577, nil, - nil, nil, 577, 577, 577, 577, nil, nil, nil, nil, - nil, 577, nil, nil, nil, nil, nil, nil, nil, 577, - 577, nil, 577, 577, 577, 577, 577, 577, 577, 577, - 577, 577, 577, 577, 583, 583, 577, nil, 583, nil, - nil, nil, nil, nil, nil, nil, nil, 583, 583, nil, - 583, 583, 583, 583, 583, 583, 583, nil, nil, 583, - 583, nil, nil, nil, 583, 583, 583, 583, nil, nil, - nil, nil, nil, 583, nil, nil, nil, nil, nil, nil, - nil, 583, 583, nil, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 584, 584, 583, nil, - 584, nil, nil, nil, nil, nil, nil, nil, nil, 584, - 584, nil, 584, 584, 584, 584, 584, 584, 584, nil, - nil, 584, 584, nil, nil, nil, 584, 584, 584, 584, - nil, nil, nil, nil, nil, 584, nil, nil, nil, nil, - nil, nil, nil, 584, 584, nil, 584, 584, 584, 584, - 584, 584, 584, 584, 584, 584, 584, 584, 939, 939, - 584, nil, 939, nil, nil, nil, nil, nil, nil, nil, - nil, 939, 939, nil, 939, 939, 939, 939, 939, 939, - 939, nil, nil, 939, 939, nil, nil, nil, 939, 939, - 939, 939, nil, nil, nil, nil, nil, 939, nil, nil, - nil, nil, nil, nil, nil, 939, 939, nil, 939, 939, - 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, - 986, 986, 939, nil, 986, nil, nil, nil, nil, nil, - nil, nil, nil, 986, 986, nil, 986, 986, 986, 986, - 986, 986, 986, nil, nil, 986, 986, nil, nil, nil, - 986, 986, 986, 986, nil, nil, nil, nil, nil, 986, - nil, nil, nil, nil, nil, nil, nil, 986, 986, nil, - 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, - 986, 986, 987, 987, 986, nil, 987, nil, nil, nil, - nil, nil, nil, nil, nil, 987, 987, nil, 987, 987, - 987, 987, 987, 987, 987, nil, nil, 987, 987, nil, - nil, nil, 987, 987, 987, 987, nil, nil, nil, nil, - nil, 987, nil, nil, nil, nil, nil, nil, nil, 987, - 987, nil, 987, 987, 987, 987, 987, 987, 987, 987, - 987, 987, 987, 987, nil, 693, 987, 693, 693, 693, - 693, 693, nil, 695, nil, 695, 695, 695, 695, 695, - nil, 693, nil, nil, nil, nil, nil, nil, 736, 695, - 736, 736, 736, 736, 736, nil, nil, nil, nil, nil, - nil, nil, nil, 693, 736, nil, nil, nil, nil, nil, - nil, 695, 693, 693, 693, 693, nil, nil, nil, 693, - 695, 695, 695, 695, nil, nil, 736, 695, 737, nil, - 737, 737, 737, 737, 737, 736, 736, 736, 736, nil, - nil, nil, 736, 865, 737, 865, 865, 865, 865, 865, - nil, 867, nil, 867, 867, 867, 867, 867, nil, 865, - nil, nil, nil, nil, nil, nil, 737, 867, 893, nil, - 893, 893, 893, 893, 893, 737, 737, 737, 737, nil, - nil, 865, 737, nil, 893, nil, nil, nil, nil, 867, - 865, 865, 865, 865, nil, nil, nil, 865, 867, 867, - 867, 867, nil, nil, nil, 867, 893, 897, nil, 897, - 897, 897, 897, 897, nil, 893, 893, 893, 893, nil, - nil, nil, 893, 897, 899, nil, 899, 899, 899, 899, - 899, nil, 971, nil, 971, 971, 971, 971, 971, nil, - 899, nil, nil, nil, nil, 897, nil, 973, 971, 973, - 973, 973, 973, 973, nil, nil, 897, 897, nil, nil, - nil, 897, 899, 973, nil, nil, nil, nil, nil, nil, - 971, nil, nil, 899, 899, nil, nil, nil, 899, 971, - 971, 971, 971, nil, nil, 973, 971, 975, nil, 975, - 975, 975, 975, 975, nil, nil, 973, 973, nil, nil, - nil, 973, 977, 975, 977, 977, 977, 977, 977, nil, - 989, nil, 989, 989, 989, 989, 989, 1015, 977, 1015, - 1015, 1015, 1015, 1015, nil, 975, 989, nil, nil, nil, - nil, nil, nil, 1015, nil, nil, 975, 975, nil, nil, - 977, 975, nil, nil, nil, nil, nil, nil, 989, nil, - nil, 977, 977, nil, nil, 1015, 977, nil, nil, 989, - 989, nil, nil, nil, 989, nil, 1015, 1015, nil, nil, - nil, 1015 ] - -racc_action_pointer = [ - 750, 47, nil, 123, nil, 5120, 1299, -62, 23249, 23378, - -21, nil, -43, 71, 533, -41, 34, -4, nil, -72, - 5252, 1173, 168, nil, 157, nil, 6, 22760, 22871, 5384, - 5516, 5648, nil, 891, 5780, 5912, nil, 71, 227, 254, - 154, 228, 6052, 6184, 6316, 95, 544, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 22355, nil, -71, 6448, - 6580, -23, nil, 6712, 6844, nil, nil, 6976, 7116, 7248, - 7380, 23765, nil, nil, nil, nil, nil, 470, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 0, nil, nil, 113, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 262, - nil, 7520, nil, nil, nil, nil, 7660, 7792, 7924, 8056, - 8196, 1032, nil, 220, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 141, nil, 1173, 8328, 8460, 8592, - 23941, 24003, 8724, 8856, 8988, 9120, 9252, 9384, nil, nil, - 546, -77, -62, 233, 131, 196, 256, nil, 9516, 1314, - 273, 9648, 9780, 9912, 10044, 10176, 10308, 10440, 10572, 10704, - 10836, 10968, 11100, 11232, 11364, 11496, 11628, 11760, 11892, 12024, - 12156, 12288, 12420, 12552, 12684, 12816, nil, nil, nil, 24065, - nil, nil, 275, 12948, 13080, nil, nil, nil, nil, nil, - nil, nil, 13212, nil, 1314, nil, 262, 314, nil, 13344, - 366, 13476, nil, nil, 13608, 13740, nil, nil, 296, nil, - 13880, 1440, 368, 362, 1455, 384, 444, 418, 14012, 1596, - 578, 615, 681, 505, 750, nil, 478, 439, 33, nil, - nil, nil, 501, 258, 478, 14152, nil, 299, 561, 753, - nil, 569, nil, 14284, 1737, 14416, 528, nil, 105, 259, - 571, 585, 454, 619, nil, nil, 23117, 488, -1, 26, - 14548, 14680, 458, 706, 596, -23, -19, 792, 691, -18, - 724, nil, nil, 227, 281, -34, nil, 822, nil, 34, - 14812, nil, nil, nil, 264, 409, 448, 451, 478, 508, - 512, 532, 554, nil, 567, nil, 14944, nil, 275, 335, - 363, 375, 392, -45, -41, 395, nil, nil, nil, nil, - nil, nil, nil, nil, 643, 23507, nil, nil, nil, nil, - 650, nil, nil, 642, 15076, 644, nil, nil, 891, 658, - nil, 672, 676, 332, 342, 22984, nil, nil, nil, 224, - 337, 723, nil, nil, 22490, 22625, nil, 1455, nil, 689, - nil, nil, 750, nil, nil, nil, nil, -33, nil, 746, - 24127, 24189, 15208, 239, 15340, 15472, 15604, 3147, 3288, 538, - 659, 778, 783, 788, 798, 5120, 5252, 5384, 3429, 3570, - 3711, 3852, 3993, 4134, 4275, 4416, 4557, 4698, 621, 630, - 4839, 4980, 15736, -46, 23114, nil, nil, nil, nil, 747, - nil, 159, 279, 750, nil, nil, 15868, nil, 16000, nil, - 16132, nil, 332, nil, nil, nil, 16272, 1455, 1878, 752, - 751, nil, nil, 754, 16412, 767, 16544, 24251, 24313, 891, - 809, nil, 16676, 769, nil, 16808, 16940, 24375, 24437, 1596, - 17072, 897, 896, 694, 824, nil, 17204, nil, nil, 17336, - nil, nil, nil, nil, 23134, nil, 783, 784, nil, 785, - 793, 794, nil, nil, nil, nil, nil, nil, nil, nil, - 787, 477, nil, nil, 17468, nil, nil, nil, 880, nil, - nil, nil, 881, nil, nil, 882, 2019, 935, nil, 2160, - 63, 119, 935, 945, 17600, 17732, 24499, 24561, 10, nil, - nil, 894, nil, 24623, 24685, 17864, nil, nil, nil, 587, - 193, 2301, 883, nil, -14, nil, nil, nil, 733, nil, - nil, nil, 858, nil, nil, 151, nil, 222, nil, nil, - 846, nil, 847, nil, nil, nil, 23636, nil, 852, 17996, - 18128, 380, 896, 18260, 18392, 18524, 18656, 899, nil, nil, - 18788, 18920, 907, nil, 19052, 19184, nil, nil, 350, 416, - 470, 607, 874, 1032, 1737, nil, 23078, nil, 2442, 979, - 5, 316, nil, 2583, 2724, nil, 882, nil, 929, 19316, - nil, nil, 19448, nil, 905, -81, 19580, 888, nil, 893, - 137, 179, 935, 340, 1032, 936, 895, 19712, 1878, 972, - 20, 1026, 19844, nil, 913, nil, 539, 21, 914, 495, - nil, nil, 740, 24934, nil, 24942, nil, 5959, nil, 19976, - nil, 607, nil, 912, 230, 925, nil, nil, nil, nil, - 850, nil, 1044, nil, nil, nil, nil, 1050, nil, 32, - 929, 26, 41, 123, 182, 20108, 414, 1173, nil, 937, - 2865, 20240, nil, nil, 1060, 3006, 24957, 24997, 23879, nil, - nil, nil, nil, nil, nil, 3147, nil, nil, nil, nil, - nil, nil, nil, 937, 20372, 2019, 20504, nil, 938, nil, - 2160, nil, 2301, nil, nil, 2442, nil, 2583, nil, 2724, - 20636, 20768, 20900, 21032, 429, 940, 940, 954, nil, 958, - 961, 980, nil, 1009, 992, 991, 989, 21164, nil, nil, - 1128, nil, nil, 3288, 1031, 1137, nil, nil, nil, nil, - 1013, 378, nil, nil, 1149, nil, 3429, 1024, 1072, nil, - nil, 1072, nil, nil, 3570, 3711, 1074, 1032, nil, nil, - nil, 1033, 1036, nil, 1046, 1047, nil, 1051, nil, nil, - 1055, 614, 1053, 600, nil, 1188, nil, 21296, 1190, 3852, - 3993, nil, 21428, 4134, 81, 122, nil, 1191, 611, 4275, - nil, 1192, 1078, 613, nil, 1087, 1095, nil, 2865, 21560, - 21692, nil, 525, nil, nil, 25012, nil, 25020, nil, 7427, - nil, nil, 1123, 1159, 21824, 933, 1181, nil, 1141, nil, - nil, nil, 4416, nil, nil, 33, 21956, nil, nil, 1146, - 1255, nil, nil, 25037, nil, 14059, nil, 25076, nil, 25093, - nil, nil, nil, nil, 330, 3415, 1134, nil, 36, nil, - 1264, 1269, nil, 47, nil, nil, nil, 1277, nil, nil, - nil, 1197, nil, 22088, 1154, nil, nil, 1164, 1165, 1167, - 1170, nil, 1172, nil, 643, nil, nil, nil, 963, 24747, - nil, nil, nil, 4557, 1035, 1074, 1104, 1252, 1176, nil, - nil, nil, 1174, 1177, 1187, 1188, 1189, 3556, 1192, 3589, - 4698, nil, nil, nil, nil, nil, 4839, nil, 4980, 3006, - nil, 25101, nil, 25116, nil, 25156, nil, 25171, nil, nil, - nil, 1300, 1237, 1238, 1323, 22220, 24809, 24871, 1215, 25179, - nil, nil, nil, nil, 3697, 1216, 862, 1347, 1361, 1240, - 1243, 1261, 1262, nil, nil, 1270, 40, 42, 112, 1314, - 1268, 1271, nil, nil, nil, 25186, nil, nil, nil, nil, - 43, nil, 1275, nil ] - -racc_action_default = [ - -3, -597, -1, -583, -4, -597, -7, -597, -597, -597, - -597, -29, -597, -597, -597, -281, -597, -40, -43, -585, - -597, -48, -50, -51, -52, -56, -258, -258, -258, -295, - -330, -331, -68, -11, -72, -80, -82, -597, -488, -489, - -597, -597, -597, -597, -597, -585, -239, -272, -273, -274, - -275, -276, -277, -278, -279, -280, -573, -283, -285, -596, - -563, -303, -391, -597, -597, -308, -311, -583, -597, -597, - -597, -597, -332, -333, -429, -430, -431, -432, -433, -454, - -436, -437, -456, -458, -441, -446, -450, -452, -468, -456, - -470, -472, -473, -474, -475, -571, -477, -478, -572, -480, - -481, -482, -483, -484, -485, -486, -487, -492, -493, -597, - -2, -584, -592, -593, -594, -6, -597, -597, -597, -597, - -597, -3, -17, -597, -111, -112, -113, -114, -115, -116, - -117, -118, -119, -123, -124, -125, -126, -127, -128, -129, - -130, -131, -132, -133, -134, -135, -136, -137, -138, -139, - -140, -141, -142, -143, -144, -145, -146, -147, -148, -149, - -150, -151, -152, -153, -154, -155, -156, -157, -158, -159, - -160, -161, -162, -163, -164, -165, -166, -167, -168, -169, - -170, -171, -172, -173, -174, -175, -176, -177, -178, -179, - -180, -181, -182, -183, -184, -185, -186, -187, -188, -189, - -190, -191, -192, -193, -22, -120, -11, -597, -597, -248, - -597, -597, -597, -597, -597, -597, -597, -585, -586, -47, - -597, -488, -489, -597, -281, -597, -597, -229, -597, -11, - -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, - -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, - -597, -597, -597, -597, -597, -597, -236, -398, -400, -597, - -581, -582, -57, -248, -597, -302, -404, -413, -415, -63, - -410, -64, -585, -65, -240, -253, -262, -262, -257, -597, - -263, -597, -454, -565, -597, -597, -66, -67, -583, -12, - -597, -15, -597, -70, -11, -585, -597, -73, -76, -11, - -88, -89, -597, -597, -96, -295, -298, -585, -597, -330, - -331, -334, -411, -597, -78, -597, -84, -292, -471, -597, - -214, -215, -230, -597, -11, -597, -585, -241, -589, -589, - -597, -597, -589, -597, -304, -305, -521, -49, -597, -597, - -597, -597, -583, -597, -584, -488, -489, -597, -597, -281, - -597, -344, -345, -106, -107, -597, -109, -597, -281, -597, - -597, -488, -489, -323, -111, -112, -153, -154, -155, -171, - -176, -183, -186, -325, -597, -561, -597, -434, -597, -597, - -597, -597, -597, -597, -597, -597, 1024, -5, -595, -23, - -24, -25, -26, -27, -597, -597, -19, -20, -21, -121, - -597, -30, -39, -268, -597, -597, -267, -31, -196, -585, - -249, -262, -262, -574, -575, -258, -408, -576, -577, -575, - -574, -258, -407, -409, -576, -577, -37, -204, -38, -597, - -41, -42, -194, -263, -44, -45, -46, -585, -301, -597, - -597, -597, -248, -292, -597, -597, -597, -205, -206, -207, - -208, -209, -210, -211, -212, -216, -217, -218, -219, -220, - -221, -222, -223, -224, -225, -226, -227, -228, -231, -232, - -233, -234, -597, -380, -258, -574, -575, -54, -58, -585, - -259, -380, -380, -585, -297, -254, -597, -255, -597, -260, - -597, -264, -597, -568, -570, -10, -584, -14, -3, -585, - -69, -290, -85, -74, -597, -585, -248, -597, -597, -95, - -597, -471, -597, -81, -86, -597, -597, -597, -597, -235, - -597, -421, -597, -286, -597, -242, -591, -590, -244, -591, - -293, -294, -564, -392, -521, -395, -560, -560, -504, -506, - -506, -506, -520, -522, -523, -524, -525, -526, -527, -528, - -529, -597, -531, -533, -535, -540, -542, -543, -545, -550, - -552, -553, -555, -556, -557, -597, -11, -335, -336, -11, - -597, -597, -597, -597, -597, -248, -597, -597, -292, -316, - -106, -107, -108, -597, -597, -248, -319, -494, -495, -597, - -597, -11, -499, -327, -585, -435, -455, -460, -597, -462, - -438, -457, -597, -459, -440, -597, -443, -597, -445, -448, - -597, -449, -597, -469, -8, -18, -597, -28, -271, -597, - -597, -412, -597, -250, -252, -597, -597, -59, -247, -405, - -597, -597, -61, -406, -597, -597, -300, -587, -574, -575, - -574, -575, -585, -194, -585, -381, -585, -383, -11, -53, - -401, -380, -245, -11, -11, -296, -262, -261, -265, -597, - -566, -567, -597, -13, -597, -71, -597, -77, -83, -585, - -574, -575, -246, -92, -94, -597, -79, -597, -203, -213, - -585, -596, -596, -284, -585, -289, -589, -597, -585, -597, - -502, -503, -597, -597, -513, -597, -516, -597, -518, -597, - -346, -597, -348, -350, -357, -585, -534, -544, -554, -558, - -596, -337, -596, -309, -338, -339, -312, -597, -315, -597, - -585, -574, -575, -578, -291, -597, -106, -107, -110, -585, - -11, -597, -497, -321, -597, -11, -521, -521, -597, -562, - -461, -464, -465, -466, -467, -11, -439, -442, -444, -447, - -451, -453, -122, -269, -597, -197, -597, -588, -262, -33, - -199, -34, -200, -60, -35, -202, -36, -201, -62, -195, - -597, -597, -597, -597, -412, -597, -560, -560, -362, -364, - -364, -364, -379, -597, -585, -385, -529, -537, -538, -548, - -597, -403, -402, -11, -597, -597, -256, -266, -569, -16, - -75, -90, -87, -299, -596, -342, -11, -422, -596, -423, - -424, -597, -243, -393, -11, -11, -597, -560, -541, -559, - -505, -506, -506, -532, -506, -506, -551, -506, -529, -546, - -585, -597, -355, -597, -530, -597, -340, -597, -597, -11, - -11, -314, -597, -11, -412, -597, -412, -597, -597, -11, - -324, -597, -585, -597, -328, -597, -270, -32, -198, -251, - -597, -237, -597, -360, -361, -370, -372, -597, -375, -597, - -377, -382, -597, -597, -597, -536, -597, -399, -597, -414, - -416, -9, -11, -428, -343, -597, -597, -426, -287, -597, - -597, -394, -501, -597, -509, -597, -511, -597, -514, -597, - -517, -519, -347, -349, -353, -597, -358, -306, -597, -307, - -597, -597, -265, -596, -317, -320, -496, -597, -326, -498, - -500, -499, -463, -597, -560, -539, -363, -364, -364, -364, - -364, -549, -364, -384, -585, -387, -389, -390, -547, -597, - -292, -55, -427, -11, -97, -98, -597, -597, -105, -425, - -396, -397, -506, -506, -506, -506, -351, -597, -356, -597, - -11, -310, -313, -417, -418, -419, -11, -322, -11, -238, - -359, -597, -367, -597, -369, -597, -373, -597, -376, -378, - -386, -597, -291, -578, -421, -248, -597, -597, -104, -597, - -507, -510, -512, -515, -597, -354, -596, -597, -597, -364, - -364, -364, -364, -388, -420, -585, -574, -575, -578, -103, - -506, -352, -341, -318, -329, -597, -365, -368, -371, -374, - -412, -508, -364, -366 ] - -racc_goto_table = [ - 216, 275, 275, 275, 14, 327, 373, 409, 573, 14, - 522, 276, 276, 276, 266, 270, 311, 311, 258, 2, - 415, 421, 334, 431, 220, 681, 323, 259, 122, 205, - 535, 127, 127, 220, 220, 220, 406, 14, 302, 302, - 550, 328, 428, 478, 297, 130, 130, 132, 132, 542, - 311, 311, 311, 110, 114, 338, 339, 487, 438, 342, - 513, 479, 735, 835, 582, 318, 660, 220, 220, 474, - 111, 220, 347, 357, 357, 705, 621, 826, 219, 6, - 314, 690, 691, 804, 6, 783, 566, 569, 713, 716, - 378, 293, 295, 780, 127, 262, 269, 271, 906, 903, - 525, 528, 115, 931, 532, 379, 935, 660, 389, 390, - 391, 392, 385, 484, 838, 14, 937, 343, 114, 1, - 220, 220, 220, 220, 14, 14, 881, 816, 359, 363, - 648, 273, 286, 287, 605, 607, 500, 663, 653, 654, - 394, 823, 204, 352, 402, 395, 277, 277, 277, 651, - 616, 472, 657, 13, 657, 923, 330, 650, 13, 375, - 331, 335, 350, 586, 374, 324, 325, 684, 326, 340, - 958, 694, 696, 698, 839, 341, 329, 332, 840, 725, - 966, 275, 730, 849, 591, 592, 13, 738, 921, 405, - 6, 782, 487, 784, 934, 405, 533, 813, 416, 393, - 6, 700, 660, 336, 687, 473, 481, 931, 387, 482, - 14, 220, 220, 220, 1003, 963, 220, 220, 220, 220, - 220, 220, 995, 872, 937, 830, 808, 903, 688, 885, - 377, 296, 380, 14, 425, 275, 275, 717, 550, 381, - 642, 382, 383, 384, 275, 740, 276, 542, 745, 667, - 415, 421, 731, 821, 276, 818, 925, 676, nil, 1011, - nil, nil, nil, nil, 13, 401, 407, 220, 220, nil, - 426, 430, nil, 13, 13, 826, 220, 734, 636, nil, - 311, 601, 603, 606, 606, nil, nil, 601, 510, 657, - 657, nil, 728, 492, 14, nil, 266, 311, 14, nil, - 270, nil, 302, 14, 669, nil, nil, 524, 793, 774, - nil, nil, 927, 823, nil, 964, nil, 672, nil, 302, - 652, 863, 864, nil, 655, 514, nil, 672, 14, 220, - nil, nil, 570, 571, nil, nil, 801, 511, 495, 114, - 665, nil, nil, 503, 220, 220, 668, 823, nil, 1012, - 786, 700, 293, 499, 832, 496, nil, 293, 505, 13, - nil, nil, 892, 914, 220, nil, 480, nil, nil, 497, - nil, nil, nil, 720, 483, nil, nil, 593, nil, nil, - 220, 277, 13, 729, nil, nil, 672, 844, nil, 277, - 622, 968, 572, 114, 672, nil, 846, 550, nil, 550, - nil, nil, nil, 628, 400, nil, nil, nil, 763, 633, - 587, 800, nil, 768, 275, 615, 847, nil, 127, nil, - nil, 851, nil, nil, nil, 823, nil, 296, 416, nil, - 852, 853, 130, nil, 132, 739, 796, 660, nil, nil, - 550, 550, nil, 13, 431, nil, 220, 13, nil, 542, - 542, nil, 13, 894, 896, nil, 898, 900, 812, 901, - nil, 333, 628, nil, 425, nil, nil, 843, nil, 970, - nil, nil, nil, nil, nil, nil, nil, 13, 275, nil, - nil, 700, nil, 700, 627, nil, 311, nil, 1004, nil, - 632, nil, 296, nil, 311, 416, nil, 296, nil, 26, - 14, nil, 14, nil, 26, 416, nil, 748, 302, 748, - 220, 809, 781, nil, 514, nil, 302, 664, nil, 26, - nil, 803, 514, nil, 220, 657, nil, nil, 26, 26, - 26, 425, 26, nil, nil, 917, nil, nil, 796, nil, - nil, 425, nil, 649, nil, nil, 834, 275, nil, nil, - nil, nil, nil, nil, 956, 700, 719, 275, nil, 822, - nil, 824, 26, 26, 416, nil, 26, nil, nil, 786, - 14, 786, 416, 14, nil, nil, nil, 6, 965, 220, - nil, nil, nil, nil, 990, 991, 992, 993, nil, 220, - nil, nil, nil, nil, nil, 14, nil, 550, nil, nil, - 425, nil, nil, 656, nil, nil, 425, 700, 403, 700, - 26, 792, nil, nil, 433, 26, 26, 26, 26, 26, - 26, 714, 714, 622, nil, 775, nil, 785, 810, 220, - 220, nil, nil, 943, 220, 220, 752, nil, 220, 127, - 732, 733, 1021, 686, 700, 791, nil, nil, 311, 13, - 622, 13, 14, 130, 998, 132, 960, 14, 14, 311, - 628, nil, nil, 633, 405, 811, nil, nil, nil, 785, - 302, 902, 1020, 854, nil, 786, 514, nil, nil, nil, - 489, 302, 491, 759, 761, 493, 494, 802, 764, 766, - nil, nil, 430, 919, nil, nil, nil, nil, nil, nil, - nil, 622, nil, nil, nil, 26, 26, 26, 26, nil, - 622, 26, 26, 26, 26, 26, 26, 845, nil, 13, - nil, nil, 13, 848, nil, nil, nil, nil, 26, 220, - nil, 928, nil, 929, 14, 220, nil, nil, nil, 14, - 758, nil, nil, nil, 13, nil, nil, nil, nil, 14, - 883, nil, 15, nil, 887, nil, nil, 15, nil, 952, - 220, 127, 26, 26, 710, 785, nil, 712, nil, 311, - nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 1005, nil, 15, 304, 304, nil, 26, - nil, 875, nil, 26, nil, nil, 672, 14, 26, nil, - nil, 13, nil, 16, nil, 618, 13, 13, 16, nil, - 14, nil, nil, nil, 857, nil, nil, nil, 14, 14, - 349, 358, 358, 26, 26, nil, nil, nil, nil, 908, - nil, nil, nil, nil, nil, nil, 16, 999, nil, 26, - 26, 220, nil, 14, 14, nil, 790, 14, nil, nil, - nil, 794, 795, 14, 777, nil, 311, nil, nil, 26, - nil, nil, nil, 15, nil, nil, 778, nil, 311, nil, - nil, 351, 15, 15, nil, 26, nil, nil, 938, nil, - nil, nil, nil, 13, nil, nil, 14, 658, 13, 333, - 946, 661, nil, 779, nil, nil, 714, 817, 13, 916, - nil, nil, nil, nil, 920, nil, nil, nil, nil, 819, - nil, nil, 819, nil, 16, 980, nil, nil, nil, nil, - nil, nil, nil, 16, 16, nil, nil, 658, nil, nil, - 333, nil, nil, nil, nil, nil, nil, nil, 787, nil, - nil, 26, 825, 855, 827, nil, 13, 14, nil, nil, - nil, nil, nil, nil, nil, 706, nil, 275, 15, 13, - nil, nil, 425, nil, 14, nil, nil, 13, 13, nil, - 14, nil, 14, nil, 416, 433, nil, nil, nil, nil, - nil, 15, nil, nil, nil, nil, 622, nil, nil, 220, - nil, 878, 13, 13, nil, 26, 13, 26, nil, nil, - nil, nil, 13, nil, 884, 26, nil, nil, nil, 16, - 425, nil, 889, 890, nil, nil, 429, nil, nil, 26, - 753, nil, nil, nil, 658, 333, nil, nil, nil, nil, - nil, nil, 16, nil, nil, 13, nil, 910, 911, nil, - nil, 913, 15, nil, nil, nil, 15, nil, nil, nil, - 304, 15, nil, nil, nil, 337, 337, nil, nil, 337, - 797, nil, nil, 798, nil, 26, nil, 304, 26, nil, - 924, nil, nil, 777, 26, 777, 15, 777, nil, nil, - 942, nil, 819, 807, 26, 778, nil, 778, nil, 778, - 26, nil, nil, 16, nil, nil, 13, 16, nil, nil, - 829, nil, 16, nil, nil, nil, nil, nil, 337, 337, - 337, 337, nil, 13, 930, nil, 932, nil, nil, 13, - nil, 13, nil, nil, 26, 26, nil, 16, nil, 26, - 26, nil, nil, 26, 866, 868, 870, nil, nil, nil, - 953, 984, 954, nil, 955, nil, nil, 26, nil, nil, - nil, nil, 26, 26, 787, 856, nil, 787, 996, 787, - nil, 787, nil, nil, 997, nil, nil, nil, nil, nil, - 38, nil, nil, nil, nil, 38, nil, nil, nil, 777, - nil, 777, nil, 777, nil, 777, nil, nil, nil, nil, - nil, 778, nil, 778, nil, 778, nil, 778, nil, nil, - nil, nil, nil, 38, 300, 300, 434, 435, 436, 437, - nil, nil, nil, nil, nil, nil, nil, nil, 1000, nil, - 1001, nil, 1002, 777, 26, nil, nil, nil, nil, 26, - 26, nil, nil, nil, 26, 778, 1010, nil, 345, 361, - 361, 361, nil, 912, 26, nil, nil, nil, 15, nil, - 15, nil, nil, nil, nil, 26, 304, nil, nil, nil, - 333, nil, 1022, 787, 304, 787, nil, 787, nil, 787, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 38, 972, 974, 976, 978, nil, 979, nil, nil, - 38, 38, 26, nil, nil, nil, nil, nil, nil, 16, - nil, 16, nil, nil, nil, 26, nil, 787, nil, nil, - nil, nil, nil, 26, 26, nil, nil, 523, 15, nil, - nil, 15, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 337, 337, nil, nil, 26, nil, 26, 26, - nil, nil, 26, 15, nil, nil, nil, nil, 26, nil, - 744, nil, 590, nil, 1016, 1017, 1018, 1019, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 594, 16, - nil, nil, 16, nil, nil, nil, 38, 1023, nil, nil, - nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 16, nil, nil, nil, nil, 38, - 15, nil, nil, nil, nil, 15, 15, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 304, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 304, - nil, nil, nil, nil, nil, nil, nil, 429, nil, nil, - nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, - nil, 16, nil, nil, nil, nil, 16, 16, 39, 26, - 38, nil, nil, 39, 38, 26, nil, 26, 300, 38, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 15, nil, 26, 300, nil, 15, nil, nil, - nil, 39, 301, 301, 38, nil, nil, 15, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 680, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 346, 362, 362, 362, - nil, nil, nil, 16, nil, nil, nil, nil, 16, 358, - nil, nil, nil, nil, nil, 15, nil, nil, 16, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 15, nil, - nil, nil, nil, nil, nil, nil, 15, 15, nil, 39, - nil, nil, nil, nil, nil, nil, nil, nil, 39, 39, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 15, 15, nil, nil, 15, 16, nil, nil, nil, - nil, 15, nil, nil, nil, nil, nil, nil, nil, 16, - nil, nil, nil, nil, nil, nil, nil, 16, 16, nil, - nil, nil, nil, nil, nil, nil, 358, nil, nil, nil, - nil, nil, nil, nil, 15, nil, nil, nil, 948, nil, - nil, nil, 16, 16, nil, nil, 16, nil, nil, nil, - nil, nil, 16, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 39, nil, 38, nil, 38, nil, - nil, nil, nil, nil, 300, nil, nil, nil, nil, nil, - nil, nil, 300, nil, nil, 16, nil, 39, nil, 949, - nil, nil, nil, nil, nil, 15, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 15, nil, nil, nil, nil, 337, 15, nil, - 15, nil, nil, 337, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 38, nil, nil, 38, - nil, nil, nil, nil, nil, nil, 16, nil, 39, nil, - nil, nil, 39, nil, nil, nil, 301, 39, nil, nil, - nil, 38, nil, 16, nil, nil, nil, nil, nil, 16, - nil, 16, nil, 301, nil, nil, nil, nil, nil, nil, - nil, nil, 39, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 38, nil, - nil, nil, nil, 38, 38, nil, nil, nil, nil, 337, - nil, nil, nil, nil, nil, nil, 300, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 300, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 38, nil, nil, nil, nil, 38, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 38, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 39, nil, 39, 361, nil, nil, - nil, nil, 301, 38, nil, nil, nil, nil, nil, nil, - 301, nil, nil, nil, nil, nil, 38, nil, nil, nil, - nil, nil, nil, nil, 38, 38, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 38, - 38, nil, nil, 38, nil, nil, nil, nil, nil, 38, - nil, nil, nil, nil, 39, nil, nil, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 361, nil, nil, nil, nil, 39, - nil, nil, 38, nil, nil, nil, 944, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 39, nil, nil, nil, - nil, 39, 39, 38, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 301, nil, nil, nil, nil, nil, - 38, nil, nil, nil, 227, 301, 38, nil, 38, nil, - nil, nil, nil, 274, 274, 274, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 320, 321, 322, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 274, 274, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 39, nil, - nil, nil, nil, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 362, nil, nil, nil, nil, - nil, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 39, nil, nil, nil, nil, nil, - nil, nil, 39, 39, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 39, 39, nil, - nil, 39, nil, nil, nil, nil, nil, 39, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 274, 408, 274, nil, nil, 427, 432, nil, nil, - nil, nil, 362, nil, nil, nil, nil, nil, nil, nil, - 39, nil, 227, nil, 945, 447, 448, 449, 450, 451, - 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - nil, nil, nil, nil, nil, nil, nil, 274, 274, nil, - nil, nil, nil, nil, nil, nil, 274, nil, nil, nil, - nil, nil, nil, 274, nil, 274, nil, nil, 274, 274, - nil, 39, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 39, nil, - nil, nil, nil, nil, 39, nil, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 519, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 274, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 274, nil, 427, 643, - 408, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 644, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 274, nil, 274, nil, 274, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 274, nil, nil, nil, nil, nil, nil, nil, nil, 678, - 679, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 274, nil, nil, 274, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 274, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 274, 274, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 274, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 274, 755, nil, nil, 274, 274, 760, - 762, nil, nil, nil, 765, 767, nil, nil, 643, 769, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 274, nil, nil, 274, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 274, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 274, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 274, nil, - 858, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 760, 762, 767, 765, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 274, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 274, 858, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 969, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 274 ] - -racc_goto_check = [ - 31, 33, 33, 33, 22, 69, 56, 23, 94, 22, - 8, 70, 70, 70, 73, 73, 64, 64, 140, 2, - 37, 37, 88, 18, 22, 10, 31, 36, 15, 15, - 139, 57, 57, 22, 22, 22, 27, 22, 22, 22, - 168, 70, 27, 39, 49, 60, 60, 61, 61, 163, - 64, 64, 64, 4, 97, 17, 17, 75, 47, 17, - 51, 23, 98, 92, 54, 63, 178, 22, 22, 37, - 6, 22, 22, 22, 22, 118, 24, 174, 20, 7, - 50, 123, 123, 11, 7, 131, 91, 91, 93, 93, - 151, 45, 46, 128, 57, 38, 38, 38, 119, 116, - 71, 71, 5, 175, 71, 152, 133, 178, 17, 17, - 17, 17, 152, 47, 11, 22, 134, 4, 97, 1, - 22, 22, 22, 22, 22, 22, 12, 131, 55, 55, - 40, 44, 44, 44, 155, 155, 47, 14, 40, 40, - 2, 169, 16, 19, 28, 30, 72, 72, 72, 42, - 62, 66, 76, 21, 76, 67, 68, 74, 21, 86, - 87, 90, 95, 96, 99, 100, 101, 102, 103, 104, - 119, 166, 166, 166, 105, 106, 72, 72, 107, 108, - 109, 33, 110, 111, 112, 113, 21, 114, 115, 70, - 7, 120, 75, 126, 132, 70, 135, 136, 73, 7, - 7, 117, 178, 137, 138, 141, 143, 175, 5, 144, - 22, 22, 22, 22, 133, 145, 22, 22, 22, 22, - 22, 22, 119, 131, 134, 118, 146, 116, 139, 147, - 150, 9, 153, 22, 57, 33, 33, 94, 168, 154, - 23, 157, 158, 159, 33, 160, 70, 163, 161, 51, - 37, 37, 162, 167, 70, 171, 172, 51, nil, 119, - nil, nil, nil, nil, 21, 20, 20, 22, 22, nil, - 20, 20, nil, 21, 21, 174, 22, 8, 47, nil, - 64, 156, 156, 156, 156, nil, nil, 156, 31, 76, - 76, nil, 54, 151, 22, nil, 73, 64, 22, nil, - 73, nil, 22, 22, 23, nil, nil, 31, 40, 24, - nil, nil, 128, 169, nil, 11, nil, 37, nil, 22, - 47, 123, 123, nil, 47, 49, nil, 37, 22, 22, - nil, nil, 17, 17, nil, nil, 24, 63, 4, 97, - 47, nil, nil, 50, 22, 22, 47, 169, nil, 92, - 168, 117, 45, 46, 117, 6, nil, 45, 46, 21, - nil, nil, 123, 93, 22, nil, 44, nil, nil, 7, - nil, nil, nil, 23, 44, nil, nil, 36, nil, nil, - 22, 72, 21, 23, nil, nil, 37, 24, nil, 72, - 31, 98, 4, 97, 37, nil, 24, 168, nil, 168, - nil, nil, nil, 73, 9, nil, nil, nil, 39, 73, - 97, 51, nil, 39, 33, 15, 8, nil, 57, nil, - nil, 8, nil, nil, nil, 169, nil, 9, 73, nil, - 139, 139, 60, nil, 61, 47, 75, 178, nil, nil, - 168, 168, nil, 21, 18, nil, 22, 21, nil, 163, - 163, nil, 21, 166, 166, nil, 166, 166, 71, 166, - nil, 65, 73, nil, 57, nil, nil, 91, nil, 123, - nil, nil, nil, nil, nil, nil, nil, 21, 33, nil, - nil, 117, nil, 117, 38, nil, 64, nil, 10, nil, - 38, nil, 9, nil, 64, 73, nil, 9, nil, 41, - 22, nil, 22, nil, 41, 73, nil, 156, 22, 156, - 22, 27, 129, nil, 49, nil, 22, 2, nil, 41, - nil, 47, 49, nil, 22, 76, nil, nil, 41, 41, - 41, 57, 41, nil, nil, 8, nil, nil, 75, nil, - nil, 57, nil, 38, nil, nil, 47, 33, nil, nil, - nil, nil, nil, nil, 117, 117, 70, 33, nil, 129, - nil, 129, 41, 41, 73, nil, 41, nil, nil, 168, - 22, 168, 73, 22, nil, nil, nil, 7, 94, 22, - nil, nil, nil, nil, 166, 166, 166, 166, nil, 22, - nil, nil, nil, nil, nil, 22, nil, 168, nil, nil, - 57, nil, nil, 72, nil, nil, 57, 117, 65, 117, - 41, 88, nil, nil, 65, 41, 41, 41, 41, 41, - 41, 97, 97, 31, nil, 31, nil, 31, 69, 22, - 22, nil, nil, 91, 22, 22, 15, nil, 22, 57, - 97, 97, 166, 72, 117, 140, nil, nil, 64, 21, - 31, 21, 22, 60, 8, 61, 91, 22, 22, 64, - 73, nil, nil, 73, 70, 31, nil, nil, nil, 31, - 22, 47, 24, 56, nil, 168, 49, nil, nil, nil, - 65, 22, 65, 20, 20, 65, 65, 49, 20, 20, - nil, nil, 20, 47, nil, nil, nil, nil, nil, nil, - nil, 31, nil, nil, nil, 41, 41, 41, 41, nil, - 31, 41, 41, 41, 41, 41, 41, 17, nil, 21, - nil, nil, 21, 17, nil, nil, nil, nil, 41, 22, - nil, 129, nil, 129, 22, 22, nil, nil, nil, 22, - 72, nil, nil, nil, 21, nil, nil, nil, nil, 22, - 69, nil, 25, nil, 69, nil, nil, 25, nil, 129, - 22, 57, 41, 41, 9, 31, nil, 9, nil, 64, - nil, 41, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 23, nil, 25, 25, 25, nil, 41, - nil, 22, nil, 41, nil, nil, 37, 22, 41, nil, - nil, 21, nil, 26, nil, 65, 21, 21, 26, nil, - 22, nil, nil, nil, 20, nil, nil, nil, 22, 22, - 25, 25, 25, 41, 41, nil, nil, nil, nil, 17, - nil, nil, nil, nil, nil, nil, 26, 129, nil, 41, - 41, 22, nil, 22, 22, nil, 9, 22, nil, nil, - nil, 9, 9, 22, 122, nil, 64, nil, nil, 41, - nil, nil, nil, 25, nil, nil, 124, nil, 64, nil, - nil, 26, 25, 25, nil, 41, nil, nil, 22, nil, - nil, nil, nil, 21, nil, nil, 22, 65, 21, 65, - 22, 65, nil, 127, nil, nil, 97, 122, 21, 97, - nil, nil, nil, nil, 97, nil, nil, nil, nil, 124, - nil, nil, 124, nil, 26, 31, nil, nil, nil, nil, - nil, nil, nil, 26, 26, nil, nil, 65, nil, nil, - 65, nil, nil, nil, nil, nil, nil, nil, 170, nil, - nil, 41, 127, 9, 127, nil, 21, 22, nil, nil, - nil, nil, nil, nil, nil, 65, nil, 33, 25, 21, - nil, nil, 57, nil, 22, nil, nil, 21, 21, nil, - 22, nil, 22, nil, 73, 65, nil, nil, nil, nil, - nil, 25, nil, nil, nil, nil, 31, nil, nil, 22, - nil, 9, 21, 21, nil, 41, 21, 41, nil, nil, - nil, nil, 21, nil, 9, 41, nil, nil, nil, 26, - 57, nil, 9, 9, nil, nil, 26, nil, nil, 41, - 65, nil, nil, nil, 65, 65, nil, nil, nil, nil, - nil, nil, 26, nil, nil, 21, nil, 9, 9, nil, - nil, 9, 25, nil, nil, nil, 25, nil, nil, nil, - 25, 25, nil, nil, nil, 29, 29, nil, nil, 29, - 65, nil, nil, 65, nil, 41, nil, 25, 41, nil, - 122, nil, nil, 122, 41, 122, 25, 122, nil, nil, - 9, nil, 124, 65, 41, 124, nil, 124, nil, 124, - 41, nil, nil, 26, nil, nil, 21, 26, nil, nil, - 65, nil, 26, nil, nil, nil, nil, nil, 29, 29, - 29, 29, nil, 21, 127, nil, 127, nil, nil, 21, - nil, 21, nil, nil, 41, 41, nil, 26, nil, 41, - 41, nil, nil, 41, 125, 125, 125, nil, nil, nil, - 127, 9, 127, nil, 127, nil, nil, 41, nil, nil, - nil, nil, 41, 41, 170, 65, nil, 170, 9, 170, - nil, 170, nil, nil, 9, nil, nil, nil, nil, nil, - 52, nil, nil, nil, nil, 52, nil, nil, nil, 122, - nil, 122, nil, 122, nil, 122, nil, nil, nil, nil, - nil, 124, nil, 124, nil, 124, nil, 124, nil, nil, - nil, nil, nil, 52, 52, 52, 29, 29, 29, 29, - nil, nil, nil, nil, nil, nil, nil, nil, 127, nil, - 127, nil, 127, 122, 41, nil, nil, nil, nil, 41, - 41, nil, nil, nil, 41, 124, 127, nil, 52, 52, - 52, 52, nil, 65, 41, nil, nil, nil, 25, nil, - 25, nil, nil, nil, nil, 41, 25, nil, nil, nil, - 65, nil, 127, 170, 25, 170, nil, 170, nil, 170, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 52, 125, 125, 125, 125, nil, 125, nil, nil, - 52, 52, 41, nil, nil, nil, nil, nil, nil, 26, - nil, 26, nil, nil, nil, 41, nil, 170, nil, nil, - nil, nil, nil, 41, 41, nil, nil, 29, 25, nil, - nil, 25, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 29, 29, nil, nil, 41, nil, 41, 41, - nil, nil, 41, 25, nil, nil, nil, nil, 41, nil, - 25, nil, 29, nil, 125, 125, 125, 125, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 29, 26, - nil, nil, 26, nil, nil, nil, 52, 125, nil, nil, - nil, 41, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 26, nil, nil, nil, nil, 52, - 25, nil, nil, nil, nil, 25, 25, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 25, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 25, - nil, nil, nil, nil, nil, nil, nil, 26, nil, nil, - nil, nil, 41, nil, nil, nil, nil, nil, nil, nil, - nil, 26, nil, nil, nil, nil, 26, 26, 53, 41, - 52, nil, nil, 53, 52, 41, nil, 41, 52, 52, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 25, nil, 41, 52, nil, 25, nil, nil, - nil, 53, 53, 53, 52, nil, nil, 25, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 29, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 53, 53, 53, 53, - nil, nil, nil, 26, nil, nil, nil, nil, 26, 25, - nil, nil, nil, nil, nil, 25, nil, nil, 26, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 25, nil, - nil, nil, nil, nil, nil, nil, 25, 25, nil, 53, - nil, nil, nil, nil, nil, nil, nil, nil, 53, 53, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 25, 25, nil, nil, 25, 26, nil, nil, nil, - nil, 25, nil, nil, nil, nil, nil, nil, nil, 26, - nil, nil, nil, nil, nil, nil, nil, 26, 26, nil, - nil, nil, nil, nil, nil, nil, 25, nil, nil, nil, - nil, nil, nil, nil, 25, nil, nil, nil, 25, nil, - nil, nil, 26, 26, nil, nil, 26, nil, nil, nil, - nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 53, nil, 52, nil, 52, nil, - nil, nil, nil, nil, 52, nil, nil, nil, nil, nil, - nil, nil, 52, nil, nil, 26, nil, 53, nil, 26, - nil, nil, nil, nil, nil, 25, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 25, nil, nil, nil, nil, 29, 25, nil, - 25, nil, nil, 29, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 52, nil, nil, 52, - nil, nil, nil, nil, nil, nil, 26, nil, 53, nil, - nil, nil, 53, nil, nil, nil, 53, 53, nil, nil, - nil, 52, nil, 26, nil, nil, nil, nil, nil, 26, - nil, 26, nil, 53, nil, nil, nil, nil, nil, nil, - nil, nil, 53, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 52, nil, - nil, nil, nil, 52, 52, nil, nil, nil, nil, 29, - nil, nil, nil, nil, nil, nil, 52, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 52, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 52, nil, nil, nil, nil, 52, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 52, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 53, nil, 53, 52, nil, nil, - nil, nil, 53, 52, nil, nil, nil, nil, nil, nil, - 53, nil, nil, nil, nil, nil, 52, nil, nil, nil, - nil, nil, nil, nil, 52, 52, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 52, - 52, nil, nil, 52, nil, nil, nil, nil, nil, 52, - nil, nil, nil, nil, 53, nil, nil, 53, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 52, nil, nil, nil, nil, 53, - nil, nil, 52, nil, nil, nil, 52, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 53, nil, nil, nil, - nil, 53, 53, 52, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 53, nil, nil, nil, nil, nil, - 52, nil, nil, nil, 32, 53, 52, nil, 52, nil, - nil, nil, nil, 32, 32, 32, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 32, 32, 32, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 32, 32, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 53, nil, - nil, nil, nil, 53, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 53, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 53, nil, nil, nil, nil, - nil, 53, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 53, nil, nil, nil, nil, nil, - nil, nil, 53, 53, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 53, 53, nil, - nil, 53, nil, nil, nil, nil, nil, 53, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 32, 32, 32, nil, nil, 32, 32, nil, nil, - nil, nil, 53, nil, nil, nil, nil, nil, nil, nil, - 53, nil, 32, nil, 53, 32, 32, 32, 32, 32, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - nil, nil, nil, nil, nil, nil, nil, 32, 32, nil, - nil, nil, nil, nil, nil, nil, 32, nil, nil, nil, - nil, nil, nil, 32, nil, 32, nil, nil, 32, 32, - nil, 53, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 53, nil, - nil, nil, nil, nil, 53, nil, 53, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 32, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 32, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 32, nil, 32, 32, - 32, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 32, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 32, nil, 32, nil, 32, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 32, nil, nil, nil, nil, nil, nil, nil, nil, 32, - 32, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 32, nil, nil, 32, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 32, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 32, 32, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 32, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 32, 32, nil, nil, 32, 32, 32, - 32, nil, nil, nil, 32, 32, nil, nil, 32, 32, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 32, nil, nil, 32, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 32, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 32, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 32, nil, - 32, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 32, 32, 32, 32, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 32, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 32, 32, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 32, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 32 ] - -racc_goto_pointer = [ - nil, 119, 19, nil, 50, 97, 67, 79, -314, 198, - -496, -598, -678, nil, -359, 20, 133, -8, -190, 75, - 58, 153, 4, -202, -333, 752, 803, -171, -63, 992, - 23, -19, 2114, -28, nil, nil, 3, -190, 69, -219, - -343, 499, -328, nil, 102, 58, 59, -159, nil, 10, - 45, -255, 1170, 1458, -291, 59, -65, 23, nil, nil, - 37, 39, -249, 24, -18, 401, -105, -706, 97, -54, - -18, -228, 117, -12, -317, -220, -334, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 88, 100, -39, nil, - 99, -252, -647, -482, -335, 94, -196, 51, -530, 93, - 108, 108, -356, 110, 104, -539, 109, -538, -400, -734, - -404, -550, -179, -188, -406, -666, -732, -350, -476, -735, - -455, nil, 208, -455, 220, 355, -453, 247, -553, -134, - nil, -561, -679, -767, -757, -140, -490, 141, -329, -306, - -4, -52, nil, -61, -59, -698, -456, -579, nil, nil, - 153, 11, 23, 149, 155, -247, -98, 156, 156, 156, - -353, -351, -336, -287, nil, nil, -368, -440, -296, -552, - 292, -434, -606, nil, -618, -764, nil, nil, -422 ] - -racc_goto_default = [ - nil, nil, nil, 3, nil, 4, 344, 291, nil, 521, - nil, 836, nil, 288, 289, nil, nil, nil, 11, 12, - 18, 226, 319, nil, nil, 224, 225, nil, nil, 17, - nil, 439, 21, 22, 23, 24, nil, 675, nil, nil, - nil, 308, nil, 25, 410, 32, nil, nil, 34, 37, - 36, nil, 221, 222, 356, nil, 129, 418, 128, 131, - 75, 76, nil, 90, 46, 280, nil, nil, nil, 805, - 411, nil, 412, 423, 629, 485, 278, 264, 47, 48, - 49, 50, 51, 52, 53, 54, 55, nil, 265, 61, - nil, nil, nil, nil, nil, nil, nil, 567, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 702, 549, nil, 703, - 926, 776, 537, nil, 538, nil, nil, 539, nil, 541, - 645, nil, nil, nil, 547, nil, nil, nil, nil, nil, - nil, nil, 422, nil, nil, nil, nil, nil, 74, 77, - 78, nil, nil, nil, nil, nil, 596, nil, nil, nil, - nil, nil, nil, 820, 737, 536, nil, 540, 828, 552, - 554, 555, 788, 558, 559, 789, 562, 565, 283 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 146, :_reduce_none, - 2, 147, :_reduce_2, - 0, 148, :_reduce_3, - 1, 148, :_reduce_4, - 3, 148, :_reduce_5, - 2, 148, :_reduce_6, - 1, 150, :_reduce_none, - 4, 150, :_reduce_8, - 4, 153, :_reduce_9, - 2, 154, :_reduce_10, - 0, 158, :_reduce_11, - 1, 158, :_reduce_12, - 3, 158, :_reduce_13, - 2, 158, :_reduce_14, - 1, 159, :_reduce_none, - 4, 159, :_reduce_16, - 0, 175, :_reduce_17, - 4, 152, :_reduce_18, - 3, 152, :_reduce_19, - 3, 152, :_reduce_20, - 3, 152, :_reduce_21, - 2, 152, :_reduce_22, - 3, 152, :_reduce_23, - 3, 152, :_reduce_24, - 3, 152, :_reduce_25, - 3, 152, :_reduce_26, - 3, 152, :_reduce_27, - 4, 152, :_reduce_28, - 1, 152, :_reduce_none, - 3, 152, :_reduce_30, - 3, 152, :_reduce_31, - 6, 152, :_reduce_32, - 5, 152, :_reduce_33, - 5, 152, :_reduce_34, - 5, 152, :_reduce_35, - 5, 152, :_reduce_36, - 3, 152, :_reduce_37, - 3, 152, :_reduce_38, - 3, 152, :_reduce_39, - 1, 152, :_reduce_none, - 3, 163, :_reduce_41, - 3, 163, :_reduce_42, - 1, 174, :_reduce_none, - 3, 174, :_reduce_44, - 3, 174, :_reduce_45, - 3, 174, :_reduce_46, - 2, 174, :_reduce_47, - 1, 174, :_reduce_none, - 1, 162, :_reduce_none, - 1, 165, :_reduce_none, - 1, 165, :_reduce_none, - 1, 179, :_reduce_none, - 4, 179, :_reduce_53, - 0, 187, :_reduce_54, - 5, 184, :_reduce_55, - 1, 186, :_reduce_none, - 2, 178, :_reduce_57, - 3, 178, :_reduce_58, - 4, 178, :_reduce_59, - 5, 178, :_reduce_60, - 4, 178, :_reduce_61, - 5, 178, :_reduce_62, - 2, 178, :_reduce_63, - 2, 178, :_reduce_64, - 2, 178, :_reduce_65, - 2, 178, :_reduce_66, - 2, 178, :_reduce_67, - 1, 164, :_reduce_68, - 3, 164, :_reduce_69, - 1, 191, :_reduce_70, - 3, 191, :_reduce_71, - 1, 190, :_reduce_none, - 2, 190, :_reduce_73, - 3, 190, :_reduce_74, - 5, 190, :_reduce_75, - 2, 190, :_reduce_76, - 4, 190, :_reduce_77, - 2, 190, :_reduce_78, - 4, 190, :_reduce_79, - 1, 190, :_reduce_80, - 3, 190, :_reduce_81, - 1, 194, :_reduce_none, - 3, 194, :_reduce_83, - 2, 193, :_reduce_84, - 3, 193, :_reduce_85, - 1, 196, :_reduce_86, - 3, 196, :_reduce_87, - 1, 195, :_reduce_88, - 1, 195, :_reduce_89, - 4, 195, :_reduce_90, - 3, 195, :_reduce_91, - 3, 195, :_reduce_92, - 3, 195, :_reduce_93, - 3, 195, :_reduce_94, - 2, 195, :_reduce_95, - 1, 195, :_reduce_96, - 1, 171, :_reduce_97, - 1, 171, :_reduce_98, - 4, 171, :_reduce_99, - 3, 171, :_reduce_100, - 3, 171, :_reduce_101, - 3, 171, :_reduce_102, - 3, 171, :_reduce_103, - 2, 171, :_reduce_104, - 1, 171, :_reduce_105, - 1, 199, :_reduce_106, - 1, 199, :_reduce_none, - 2, 200, :_reduce_108, - 1, 200, :_reduce_109, - 3, 200, :_reduce_110, - 1, 201, :_reduce_none, - 1, 201, :_reduce_none, - 1, 201, :_reduce_none, - 1, 201, :_reduce_none, - 1, 201, :_reduce_none, - 1, 204, :_reduce_116, - 1, 204, :_reduce_none, - 1, 160, :_reduce_none, - 1, 160, :_reduce_none, - 1, 161, :_reduce_120, - 0, 207, :_reduce_121, - 4, 161, :_reduce_122, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 202, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 1, 203, :_reduce_none, - 3, 177, :_reduce_194, - 5, 177, :_reduce_195, - 3, 177, :_reduce_196, - 5, 177, :_reduce_197, - 6, 177, :_reduce_198, - 5, 177, :_reduce_199, - 5, 177, :_reduce_200, - 5, 177, :_reduce_201, - 5, 177, :_reduce_202, - 4, 177, :_reduce_203, - 3, 177, :_reduce_204, - 3, 177, :_reduce_205, - 3, 177, :_reduce_206, - 3, 177, :_reduce_207, - 3, 177, :_reduce_208, - 3, 177, :_reduce_209, - 3, 177, :_reduce_210, - 3, 177, :_reduce_211, - 3, 177, :_reduce_212, - 4, 177, :_reduce_213, - 2, 177, :_reduce_214, - 2, 177, :_reduce_215, - 3, 177, :_reduce_216, - 3, 177, :_reduce_217, - 3, 177, :_reduce_218, - 3, 177, :_reduce_219, - 3, 177, :_reduce_220, - 3, 177, :_reduce_221, - 3, 177, :_reduce_222, - 3, 177, :_reduce_223, - 3, 177, :_reduce_224, - 3, 177, :_reduce_225, - 3, 177, :_reduce_226, - 3, 177, :_reduce_227, - 3, 177, :_reduce_228, - 2, 177, :_reduce_229, - 2, 177, :_reduce_230, - 3, 177, :_reduce_231, - 3, 177, :_reduce_232, - 3, 177, :_reduce_233, - 3, 177, :_reduce_234, - 3, 177, :_reduce_235, - 0, 211, :_reduce_236, - 0, 212, :_reduce_237, - 8, 177, :_reduce_238, - 1, 177, :_reduce_none, - 1, 210, :_reduce_none, - 1, 213, :_reduce_none, - 2, 213, :_reduce_none, - 4, 213, :_reduce_243, - 2, 213, :_reduce_244, - 3, 218, :_reduce_245, - 0, 219, :_reduce_246, - 1, 219, :_reduce_none, - 0, 168, :_reduce_248, - 1, 168, :_reduce_none, - 2, 168, :_reduce_none, - 4, 168, :_reduce_251, - 2, 168, :_reduce_252, - 1, 189, :_reduce_253, - 2, 189, :_reduce_254, - 2, 189, :_reduce_255, - 4, 189, :_reduce_256, - 1, 189, :_reduce_257, - 0, 222, :_reduce_258, - 2, 183, :_reduce_259, - 2, 221, :_reduce_260, - 2, 220, :_reduce_261, - 0, 220, :_reduce_262, - 1, 215, :_reduce_263, - 2, 215, :_reduce_264, - 3, 215, :_reduce_265, - 4, 215, :_reduce_266, - 1, 173, :_reduce_267, - 1, 173, :_reduce_none, - 3, 172, :_reduce_269, - 4, 172, :_reduce_270, - 2, 172, :_reduce_271, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_none, - 1, 209, :_reduce_282, - 0, 245, :_reduce_283, - 4, 209, :_reduce_284, - 0, 246, :_reduce_285, - 0, 247, :_reduce_286, - 6, 209, :_reduce_287, - 0, 248, :_reduce_288, - 4, 209, :_reduce_289, - 3, 209, :_reduce_290, - 3, 209, :_reduce_291, - 2, 209, :_reduce_292, - 3, 209, :_reduce_293, - 3, 209, :_reduce_294, - 1, 209, :_reduce_295, - 4, 209, :_reduce_296, - 3, 209, :_reduce_297, - 1, 209, :_reduce_298, - 5, 209, :_reduce_299, - 4, 209, :_reduce_300, - 3, 209, :_reduce_301, - 2, 209, :_reduce_302, - 1, 209, :_reduce_none, - 2, 209, :_reduce_304, - 2, 209, :_reduce_305, - 6, 209, :_reduce_306, - 6, 209, :_reduce_307, - 0, 249, :_reduce_308, - 0, 250, :_reduce_309, - 7, 209, :_reduce_310, - 0, 251, :_reduce_311, - 0, 252, :_reduce_312, - 7, 209, :_reduce_313, - 5, 209, :_reduce_314, - 4, 209, :_reduce_315, - 0, 253, :_reduce_316, - 0, 254, :_reduce_317, - 9, 209, :_reduce_318, - 0, 255, :_reduce_319, - 6, 209, :_reduce_320, - 0, 256, :_reduce_321, - 7, 209, :_reduce_322, - 0, 257, :_reduce_323, - 5, 209, :_reduce_324, - 0, 258, :_reduce_325, - 6, 209, :_reduce_326, - 0, 259, :_reduce_327, - 0, 260, :_reduce_328, - 9, 209, :_reduce_329, - 1, 209, :_reduce_330, - 1, 209, :_reduce_331, - 1, 209, :_reduce_332, - 1, 209, :_reduce_333, - 1, 167, :_reduce_none, - 1, 236, :_reduce_none, - 1, 236, :_reduce_none, - 2, 236, :_reduce_337, - 1, 238, :_reduce_none, - 1, 238, :_reduce_none, - 1, 237, :_reduce_none, - 5, 237, :_reduce_341, - 1, 156, :_reduce_none, - 2, 156, :_reduce_343, - 1, 240, :_reduce_none, - 1, 240, :_reduce_none, - 1, 261, :_reduce_346, - 3, 261, :_reduce_347, - 1, 264, :_reduce_348, - 3, 264, :_reduce_349, - 1, 263, :_reduce_none, - 4, 263, :_reduce_351, - 6, 263, :_reduce_352, - 3, 263, :_reduce_353, - 5, 263, :_reduce_354, - 2, 263, :_reduce_355, - 4, 263, :_reduce_356, - 1, 263, :_reduce_357, - 3, 263, :_reduce_358, - 4, 265, :_reduce_359, - 2, 265, :_reduce_360, - 2, 265, :_reduce_361, - 1, 265, :_reduce_362, - 2, 270, :_reduce_363, - 0, 270, :_reduce_364, - 6, 271, :_reduce_365, - 8, 271, :_reduce_366, - 4, 271, :_reduce_367, - 6, 271, :_reduce_368, - 4, 271, :_reduce_369, - 2, 271, :_reduce_none, - 6, 271, :_reduce_371, - 2, 271, :_reduce_372, - 4, 271, :_reduce_373, - 6, 271, :_reduce_374, - 2, 271, :_reduce_375, - 4, 271, :_reduce_376, - 2, 271, :_reduce_377, - 4, 271, :_reduce_378, - 1, 271, :_reduce_none, - 0, 185, :_reduce_380, - 1, 185, :_reduce_381, - 3, 275, :_reduce_382, - 1, 275, :_reduce_383, - 4, 275, :_reduce_384, - 1, 276, :_reduce_385, - 4, 276, :_reduce_386, - 1, 277, :_reduce_387, - 3, 277, :_reduce_388, - 1, 278, :_reduce_389, - 1, 278, :_reduce_none, - 0, 282, :_reduce_391, - 0, 283, :_reduce_392, - 4, 235, :_reduce_393, - 4, 280, :_reduce_394, - 1, 280, :_reduce_395, - 3, 281, :_reduce_396, - 3, 281, :_reduce_397, - 0, 286, :_reduce_398, - 5, 285, :_reduce_399, - 2, 180, :_reduce_400, - 4, 180, :_reduce_401, - 5, 180, :_reduce_402, - 5, 180, :_reduce_403, - 2, 234, :_reduce_404, - 4, 234, :_reduce_405, - 4, 234, :_reduce_406, - 3, 234, :_reduce_407, - 3, 234, :_reduce_408, - 3, 234, :_reduce_409, - 2, 234, :_reduce_410, - 1, 234, :_reduce_411, - 4, 234, :_reduce_412, - 0, 288, :_reduce_413, - 5, 233, :_reduce_414, - 0, 289, :_reduce_415, - 5, 233, :_reduce_416, - 5, 239, :_reduce_417, - 1, 290, :_reduce_418, - 1, 290, :_reduce_none, - 6, 155, :_reduce_420, - 0, 155, :_reduce_421, - 1, 291, :_reduce_422, - 1, 291, :_reduce_none, - 1, 291, :_reduce_none, - 2, 292, :_reduce_425, - 1, 292, :_reduce_none, - 2, 157, :_reduce_427, - 1, 157, :_reduce_none, - 1, 223, :_reduce_none, - 1, 223, :_reduce_none, - 1, 223, :_reduce_none, - 1, 224, :_reduce_432, - 1, 294, :_reduce_433, - 2, 294, :_reduce_434, - 3, 295, :_reduce_435, - 1, 295, :_reduce_436, - 1, 295, :_reduce_437, - 3, 225, :_reduce_438, - 4, 226, :_reduce_439, - 3, 227, :_reduce_440, - 0, 299, :_reduce_441, - 3, 299, :_reduce_442, - 1, 300, :_reduce_443, - 2, 300, :_reduce_444, - 3, 229, :_reduce_445, - 0, 302, :_reduce_446, - 3, 302, :_reduce_447, - 3, 228, :_reduce_448, - 3, 230, :_reduce_449, - 0, 303, :_reduce_450, - 3, 303, :_reduce_451, - 0, 304, :_reduce_452, - 3, 304, :_reduce_453, - 0, 296, :_reduce_454, - 2, 296, :_reduce_455, - 0, 297, :_reduce_456, - 2, 297, :_reduce_457, - 0, 298, :_reduce_458, - 2, 298, :_reduce_459, - 1, 301, :_reduce_460, - 2, 301, :_reduce_461, - 0, 306, :_reduce_462, - 4, 301, :_reduce_463, - 1, 305, :_reduce_464, - 1, 305, :_reduce_465, - 1, 305, :_reduce_466, - 1, 305, :_reduce_none, - 1, 205, :_reduce_468, - 3, 206, :_reduce_469, - 1, 293, :_reduce_470, - 2, 293, :_reduce_471, - 1, 208, :_reduce_472, - 1, 208, :_reduce_473, - 1, 208, :_reduce_474, - 1, 208, :_reduce_475, - 1, 197, :_reduce_476, - 1, 197, :_reduce_477, - 1, 197, :_reduce_478, - 1, 197, :_reduce_479, - 1, 197, :_reduce_480, - 1, 198, :_reduce_481, - 1, 198, :_reduce_482, - 1, 198, :_reduce_483, - 1, 198, :_reduce_484, - 1, 198, :_reduce_485, - 1, 198, :_reduce_486, - 1, 198, :_reduce_487, - 1, 231, :_reduce_488, - 1, 231, :_reduce_489, - 1, 166, :_reduce_490, - 1, 166, :_reduce_491, - 1, 170, :_reduce_492, - 1, 170, :_reduce_493, - 1, 241, :_reduce_494, - 0, 307, :_reduce_495, - 4, 241, :_reduce_496, - 2, 241, :_reduce_497, - 3, 243, :_reduce_498, - 0, 309, :_reduce_499, - 3, 243, :_reduce_500, - 4, 308, :_reduce_501, - 2, 308, :_reduce_502, - 2, 308, :_reduce_503, - 1, 308, :_reduce_504, - 2, 311, :_reduce_505, - 0, 311, :_reduce_506, - 6, 284, :_reduce_507, - 8, 284, :_reduce_508, - 4, 284, :_reduce_509, - 6, 284, :_reduce_510, - 4, 284, :_reduce_511, - 6, 284, :_reduce_512, - 2, 284, :_reduce_513, - 4, 284, :_reduce_514, - 6, 284, :_reduce_515, - 2, 284, :_reduce_516, - 4, 284, :_reduce_517, - 2, 284, :_reduce_518, - 4, 284, :_reduce_519, - 1, 284, :_reduce_520, - 0, 284, :_reduce_521, - 1, 279, :_reduce_522, - 1, 279, :_reduce_523, - 1, 279, :_reduce_524, - 1, 279, :_reduce_525, - 1, 262, :_reduce_none, - 1, 262, :_reduce_527, - 1, 313, :_reduce_528, - 1, 314, :_reduce_529, - 3, 314, :_reduce_530, - 1, 272, :_reduce_531, - 3, 272, :_reduce_532, - 1, 315, :_reduce_533, - 2, 316, :_reduce_534, - 1, 316, :_reduce_535, - 2, 317, :_reduce_536, - 1, 317, :_reduce_537, - 1, 266, :_reduce_538, - 3, 266, :_reduce_539, - 1, 310, :_reduce_540, - 3, 310, :_reduce_541, - 1, 318, :_reduce_none, - 1, 318, :_reduce_none, - 2, 267, :_reduce_544, - 1, 267, :_reduce_545, - 3, 319, :_reduce_546, - 3, 320, :_reduce_547, - 1, 273, :_reduce_548, - 3, 273, :_reduce_549, - 1, 312, :_reduce_550, - 3, 312, :_reduce_551, - 1, 321, :_reduce_none, - 1, 321, :_reduce_none, - 2, 274, :_reduce_554, - 1, 274, :_reduce_555, - 1, 322, :_reduce_none, - 1, 322, :_reduce_none, - 2, 269, :_reduce_558, - 2, 268, :_reduce_559, - 0, 268, :_reduce_560, - 1, 244, :_reduce_none, - 3, 244, :_reduce_562, - 0, 232, :_reduce_563, - 2, 232, :_reduce_none, - 1, 217, :_reduce_565, - 3, 217, :_reduce_566, - 3, 323, :_reduce_567, - 2, 323, :_reduce_568, - 4, 323, :_reduce_569, - 2, 323, :_reduce_570, - 1, 188, :_reduce_none, - 1, 188, :_reduce_none, - 1, 188, :_reduce_none, - 1, 182, :_reduce_none, - 1, 182, :_reduce_none, - 1, 182, :_reduce_none, - 1, 182, :_reduce_none, - 1, 287, :_reduce_none, - 1, 287, :_reduce_none, - 1, 287, :_reduce_none, - 1, 181, :_reduce_none, - 1, 181, :_reduce_none, - 0, 149, :_reduce_none, - 1, 149, :_reduce_none, - 0, 176, :_reduce_none, - 1, 176, :_reduce_none, - 2, 192, :_reduce_587, - 2, 169, :_reduce_588, - 0, 216, :_reduce_none, - 1, 216, :_reduce_none, - 1, 216, :_reduce_none, - 1, 242, :_reduce_592, - 1, 242, :_reduce_none, - 1, 151, :_reduce_none, - 2, 151, :_reduce_none, - 0, 214, :_reduce_596 ] - -racc_reduce_n = 597 - -racc_shift_n = 1024 - -racc_token_table = { - false => 0, - :error => 1, - :kCLASS => 2, - :kMODULE => 3, - :kDEF => 4, - :kUNDEF => 5, - :kBEGIN => 6, - :kRESCUE => 7, - :kENSURE => 8, - :kEND => 9, - :kIF => 10, - :kUNLESS => 11, - :kTHEN => 12, - :kELSIF => 13, - :kELSE => 14, - :kCASE => 15, - :kWHEN => 16, - :kWHILE => 17, - :kUNTIL => 18, - :kFOR => 19, - :kBREAK => 20, - :kNEXT => 21, - :kREDO => 22, - :kRETRY => 23, - :kIN => 24, - :kDO => 25, - :kDO_COND => 26, - :kDO_BLOCK => 27, - :kDO_LAMBDA => 28, - :kRETURN => 29, - :kYIELD => 30, - :kSUPER => 31, - :kSELF => 32, - :kNIL => 33, - :kTRUE => 34, - :kFALSE => 35, - :kAND => 36, - :kOR => 37, - :kNOT => 38, - :kIF_MOD => 39, - :kUNLESS_MOD => 40, - :kWHILE_MOD => 41, - :kUNTIL_MOD => 42, - :kRESCUE_MOD => 43, - :kALIAS => 44, - :kDEFINED => 45, - :klBEGIN => 46, - :klEND => 47, - :k__LINE__ => 48, - :k__FILE__ => 49, - :k__ENCODING__ => 50, - :tIDENTIFIER => 51, - :tFID => 52, - :tGVAR => 53, - :tIVAR => 54, - :tCONSTANT => 55, - :tLABEL => 56, - :tCVAR => 57, - :tNTH_REF => 58, - :tBACK_REF => 59, - :tSTRING_CONTENT => 60, - :tINTEGER => 61, - :tFLOAT => 62, - :tREGEXP_END => 63, - :tUPLUS => 64, - :tUMINUS => 65, - :tUMINUS_NUM => 66, - :tPOW => 67, - :tCMP => 68, - :tEQ => 69, - :tEQQ => 70, - :tNEQ => 71, - :tGEQ => 72, - :tLEQ => 73, - :tANDOP => 74, - :tOROP => 75, - :tMATCH => 76, - :tNMATCH => 77, - :tDOT => 78, - :tDOT2 => 79, - :tDOT3 => 80, - :tAREF => 81, - :tASET => 82, - :tLSHFT => 83, - :tRSHFT => 84, - :tCOLON2 => 85, - :tCOLON3 => 86, - :tOP_ASGN => 87, - :tASSOC => 88, - :tLPAREN => 89, - :tLPAREN2 => 90, - :tRPAREN => 91, - :tLPAREN_ARG => 92, - :tLBRACK => 93, - :tLBRACK2 => 94, - :tRBRACK => 95, - :tLBRACE => 96, - :tLBRACE_ARG => 97, - :tSTAR => 98, - :tSTAR2 => 99, - :tAMPER => 100, - :tAMPER2 => 101, - :tTILDE => 102, - :tPERCENT => 103, - :tDIVIDE => 104, - :tDSTAR => 105, - :tPLUS => 106, - :tMINUS => 107, - :tLT => 108, - :tGT => 109, - :tPIPE => 110, - :tBANG => 111, - :tCARET => 112, - :tLCURLY => 113, - :tRCURLY => 114, - :tBACK_REF2 => 115, - :tSYMBEG => 116, - :tSTRING_BEG => 117, - :tXSTRING_BEG => 118, - :tREGEXP_BEG => 119, - :tREGEXP_OPT => 120, - :tWORDS_BEG => 121, - :tQWORDS_BEG => 122, - :tSYMBOLS_BEG => 123, - :tQSYMBOLS_BEG => 124, - :tSTRING_DBEG => 125, - :tSTRING_DVAR => 126, - :tSTRING_END => 127, - :tSTRING_DEND => 128, - :tSTRING => 129, - :tSYMBOL => 130, - :tNL => 131, - :tEH => 132, - :tCOLON => 133, - :tCOMMA => 134, - :tSPACE => 135, - :tSEMI => 136, - :tLAMBDA => 137, - :tLAMBEG => 138, - :tCHARACTER => 139, - :tRATIONAL => 140, - :tIMAGINARY => 141, - :tLABEL_END => 142, - :tEQL => 143, - :tLOWEST => 144 } - -racc_nt_base = 145 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "kCLASS", - "kMODULE", - "kDEF", - "kUNDEF", - "kBEGIN", - "kRESCUE", - "kENSURE", - "kEND", - "kIF", - "kUNLESS", - "kTHEN", - "kELSIF", - "kELSE", - "kCASE", - "kWHEN", - "kWHILE", - "kUNTIL", - "kFOR", - "kBREAK", - "kNEXT", - "kREDO", - "kRETRY", - "kIN", - "kDO", - "kDO_COND", - "kDO_BLOCK", - "kDO_LAMBDA", - "kRETURN", - "kYIELD", - "kSUPER", - "kSELF", - "kNIL", - "kTRUE", - "kFALSE", - "kAND", - "kOR", - "kNOT", - "kIF_MOD", - "kUNLESS_MOD", - "kWHILE_MOD", - "kUNTIL_MOD", - "kRESCUE_MOD", - "kALIAS", - "kDEFINED", - "klBEGIN", - "klEND", - "k__LINE__", - "k__FILE__", - "k__ENCODING__", - "tIDENTIFIER", - "tFID", - "tGVAR", - "tIVAR", - "tCONSTANT", - "tLABEL", - "tCVAR", - "tNTH_REF", - "tBACK_REF", - "tSTRING_CONTENT", - "tINTEGER", - "tFLOAT", - "tREGEXP_END", - "tUPLUS", - "tUMINUS", - "tUMINUS_NUM", - "tPOW", - "tCMP", - "tEQ", - "tEQQ", - "tNEQ", - "tGEQ", - "tLEQ", - "tANDOP", - "tOROP", - "tMATCH", - "tNMATCH", - "tDOT", - "tDOT2", - "tDOT3", - "tAREF", - "tASET", - "tLSHFT", - "tRSHFT", - "tCOLON2", - "tCOLON3", - "tOP_ASGN", - "tASSOC", - "tLPAREN", - "tLPAREN2", - "tRPAREN", - "tLPAREN_ARG", - "tLBRACK", - "tLBRACK2", - "tRBRACK", - "tLBRACE", - "tLBRACE_ARG", - "tSTAR", - "tSTAR2", - "tAMPER", - "tAMPER2", - "tTILDE", - "tPERCENT", - "tDIVIDE", - "tDSTAR", - "tPLUS", - "tMINUS", - "tLT", - "tGT", - "tPIPE", - "tBANG", - "tCARET", - "tLCURLY", - "tRCURLY", - "tBACK_REF2", - "tSYMBEG", - "tSTRING_BEG", - "tXSTRING_BEG", - "tREGEXP_BEG", - "tREGEXP_OPT", - "tWORDS_BEG", - "tQWORDS_BEG", - "tSYMBOLS_BEG", - "tQSYMBOLS_BEG", - "tSTRING_DBEG", - "tSTRING_DVAR", - "tSTRING_END", - "tSTRING_DEND", - "tSTRING", - "tSYMBOL", - "tNL", - "tEH", - "tCOLON", - "tCOMMA", - "tSPACE", - "tSEMI", - "tLAMBDA", - "tLAMBEG", - "tCHARACTER", - "tRATIONAL", - "tIMAGINARY", - "tLABEL_END", - "tEQL", - "tLOWEST", - "$start", - "program", - "top_compstmt", - "top_stmts", - "opt_terms", - "top_stmt", - "terms", - "stmt", - "bodystmt", - "compstmt", - "opt_rescue", - "opt_else", - "opt_ensure", - "stmts", - "stmt_or_begin", - "fitem", - "undef_list", - "expr_value", - "command_asgn", - "mlhs", - "command_call", - "var_lhs", - "primary_value", - "opt_call_args", - "rbracket", - "backref", - "lhs", - "mrhs", - "mrhs_arg", - "expr", - "@1", - "opt_nl", - "arg", - "command", - "block_command", - "block_call", - "dot_or_colon", - "operation2", - "command_args", - "cmd_brace_block", - "opt_block_param", - "fcall", - "@2", - "operation", - "call_args", - "mlhs_basic", - "mlhs_inner", - "rparen", - "mlhs_head", - "mlhs_item", - "mlhs_node", - "mlhs_post", - "user_variable", - "keyword_variable", - "cname", - "cpath", - "fname", - "op", - "reswords", - "fsym", - "symbol", - "dsym", - "@3", - "simple_numeric", - "primary", - "arg_value", - "@4", - "@5", - "aref_args", - "none", - "args", - "trailer", - "assocs", - "paren_args", - "opt_paren_args", - "opt_block_arg", - "block_arg", - "@6", - "literal", - "strings", - "xstring", - "regexp", - "words", - "qwords", - "symbols", - "qsymbols", - "var_ref", - "assoc_list", - "brace_block", - "method_call", - "lambda", - "then", - "if_tail", - "do", - "case_body", - "for_var", - "superclass", - "term", - "f_arglist", - "singleton", - "@7", - "@8", - "@9", - "@10", - "@11", - "@12", - "@13", - "@14", - "@15", - "@16", - "@17", - "@18", - "@19", - "@20", - "@21", - "@22", - "f_marg", - "f_norm_arg", - "f_margs", - "f_marg_list", - "block_args_tail", - "f_block_kwarg", - "f_kwrest", - "opt_f_block_arg", - "f_block_arg", - "opt_block_args_tail", - "block_param", - "f_arg", - "f_block_optarg", - "f_rest_arg", - "block_param_def", - "opt_bv_decl", - "bv_decls", - "bvar", - "f_bad_arg", - "f_larglist", - "lambda_body", - "@23", - "@24", - "f_args", - "do_block", - "@25", - "operation3", - "@26", - "@27", - "cases", - "exc_list", - "exc_var", - "numeric", - "string", - "string1", - "string_contents", - "xstring_contents", - "regexp_contents", - "word_list", - "word", - "string_content", - "symbol_list", - "qword_list", - "qsym_list", - "string_dvar", - "@28", - "@29", - "args_tail", - "@30", - "f_kwarg", - "opt_args_tail", - "f_optarg", - "f_arg_asgn", - "f_arg_item", - "f_label", - "f_kw", - "f_block_kw", - "kwrest_mark", - "f_opt", - "f_block_opt", - "restarg_mark", - "blkarg_mark", - "assoc" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -# reduce 1 omitted - -module_eval(<<'.,.,', 'ruby22.y', 78) - def _reduce_2(val, _values, result) - result = @builder.compstmt(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 83) - def _reduce_3(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 87) - def _reduce_4(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 91) - def _reduce_5(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 95) - def _reduce_6(val, _values, result) - result = [ val[1] ] - - result - end -.,., - -# reduce 7 omitted - -module_eval(<<'.,.,', 'ruby22.y', 101) - def _reduce_8(val, _values, result) - result = @builder.preexe(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 106) - def _reduce_9(val, _values, result) - rescue_bodies = val[1] - else_t, else_ = val[2] - ensure_t, ensure_ = val[3] - - if rescue_bodies.empty? && !else_.nil? - diagnostic :warning, :useless_else, nil, else_t - end - - result = @builder.begin_body(val[0], - rescue_bodies, - else_t, else_, - ensure_t, ensure_) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 122) - def _reduce_10(val, _values, result) - result = @builder.compstmt(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 127) - def _reduce_11(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 131) - def _reduce_12(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 135) - def _reduce_13(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 139) - def _reduce_14(val, _values, result) - result = [ val[1] ] - - result - end -.,., - -# reduce 15 omitted - -module_eval(<<'.,.,', 'ruby22.y', 145) - def _reduce_16(val, _values, result) - diagnostic :error, :begin_in_method, nil, val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 150) - def _reduce_17(val, _values, result) - @lexer.state = :expr_fname - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 154) - def _reduce_18(val, _values, result) - result = @builder.alias(val[0], val[1], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 158) - def _reduce_19(val, _values, result) - result = @builder.alias(val[0], - @builder.gvar(val[1]), - @builder.gvar(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 164) - def _reduce_20(val, _values, result) - result = @builder.alias(val[0], - @builder.gvar(val[1]), - @builder.back_ref(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 170) - def _reduce_21(val, _values, result) - diagnostic :error, :nth_ref_alias, nil, val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 174) - def _reduce_22(val, _values, result) - result = @builder.undef_method(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 178) - def _reduce_23(val, _values, result) - result = @builder.condition_mod(val[0], nil, - val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 183) - def _reduce_24(val, _values, result) - result = @builder.condition_mod(nil, val[0], - val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 188) - def _reduce_25(val, _values, result) - result = @builder.loop_mod(:while, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 192) - def _reduce_26(val, _values, result) - result = @builder.loop_mod(:until, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 196) - def _reduce_27(val, _values, result) - rescue_body = @builder.rescue_body(val[1], - nil, nil, nil, - nil, val[2]) - - result = @builder.begin_body(val[0], [ rescue_body ]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 204) - def _reduce_28(val, _values, result) - result = @builder.postexe(val[0], val[1], val[2], val[3]) - - result - end -.,., - -# reduce 29 omitted - -module_eval(<<'.,.,', 'ruby22.y', 209) - def _reduce_30(val, _values, result) - result = @builder.multi_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 213) - def _reduce_31(val, _values, result) - result = @builder.op_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 217) - def _reduce_32(val, _values, result) - result = @builder.op_assign( - @builder.index( - val[0], val[1], val[2], val[3]), - val[4], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 224) - def _reduce_33(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 231) - def _reduce_34(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 238) - def _reduce_35(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 245) - def _reduce_36(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 252) - def _reduce_37(val, _values, result) - @builder.op_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 256) - def _reduce_38(val, _values, result) - result = @builder.assign(val[0], val[1], - @builder.array(nil, val[2], nil)) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 261) - def _reduce_39(val, _values, result) - result = @builder.multi_assign(val[0], val[1], val[2]) - - result - end -.,., - -# reduce 40 omitted - -module_eval(<<'.,.,', 'ruby22.y', 267) - def _reduce_41(val, _values, result) - result = @builder.assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 271) - def _reduce_42(val, _values, result) - result = @builder.assign(val[0], val[1], val[2]) - - result - end -.,., - -# reduce 43 omitted - -module_eval(<<'.,.,', 'ruby22.y', 277) - def _reduce_44(val, _values, result) - result = @builder.logical_op(:and, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 281) - def _reduce_45(val, _values, result) - result = @builder.logical_op(:or, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 285) - def _reduce_46(val, _values, result) - result = @builder.not_op(val[0], nil, val[2], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 289) - def _reduce_47(val, _values, result) - result = @builder.not_op(val[0], nil, val[1], nil) - - result - end -.,., - -# reduce 48 omitted - -# reduce 49 omitted - -# reduce 50 omitted - -# reduce 51 omitted - -# reduce 52 omitted - -module_eval(<<'.,.,', 'ruby22.y', 301) - def _reduce_53(val, _values, result) - result = @builder.call_method(val[0], val[1], val[2], - nil, val[3], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 307) - def _reduce_54(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 311) - def _reduce_55(val, _values, result) - result = [ val[0], val[2], val[3], val[4] ] - - @static_env.unextend - - result - end -.,., - -# reduce 56 omitted - -module_eval(<<'.,.,', 'ruby22.y', 320) - def _reduce_57(val, _values, result) - result = @builder.call_method(nil, nil, val[0], - nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 325) - def _reduce_58(val, _values, result) - method_call = @builder.call_method(nil, nil, val[0], - nil, val[1], nil) - - begin_t, args, body, end_t = val[2] - result = @builder.block(method_call, - begin_t, args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 334) - def _reduce_59(val, _values, result) - result = @builder.call_method(val[0], val[1], val[2], - nil, val[3], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 339) - def _reduce_60(val, _values, result) - method_call = @builder.call_method(val[0], val[1], val[2], - nil, val[3], nil) - - begin_t, args, body, end_t = val[4] - result = @builder.block(method_call, - begin_t, args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 348) - def _reduce_61(val, _values, result) - result = @builder.call_method(val[0], val[1], val[2], - nil, val[3], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 353) - def _reduce_62(val, _values, result) - method_call = @builder.call_method(val[0], val[1], val[2], - nil, val[3], nil) - - begin_t, args, body, end_t = val[4] - result = @builder.block(method_call, - begin_t, args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 362) - def _reduce_63(val, _values, result) - result = @builder.keyword_cmd(:super, val[0], - nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 367) - def _reduce_64(val, _values, result) - result = @builder.keyword_cmd(:yield, val[0], - nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 372) - def _reduce_65(val, _values, result) - result = @builder.keyword_cmd(:return, val[0], - nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 377) - def _reduce_66(val, _values, result) - result = @builder.keyword_cmd(:break, val[0], - nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 382) - def _reduce_67(val, _values, result) - result = @builder.keyword_cmd(:next, val[0], - nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 388) - def _reduce_68(val, _values, result) - result = @builder.multi_lhs(nil, val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 392) - def _reduce_69(val, _values, result) - result = @builder.begin(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 397) - def _reduce_70(val, _values, result) - result = @builder.multi_lhs(nil, val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 401) - def _reduce_71(val, _values, result) - result = @builder.multi_lhs(val[0], val[1], val[2]) - - result - end -.,., - -# reduce 72 omitted - -module_eval(<<'.,.,', 'ruby22.y', 407) - def _reduce_73(val, _values, result) - result = val[0]. - push(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 412) - def _reduce_74(val, _values, result) - result = val[0]. - push(@builder.splat(val[1], val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 417) - def _reduce_75(val, _values, result) - result = val[0]. - push(@builder.splat(val[1], val[2])). - concat(val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 423) - def _reduce_76(val, _values, result) - result = val[0]. - push(@builder.splat(val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 428) - def _reduce_77(val, _values, result) - result = val[0]. - push(@builder.splat(val[1])). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 434) - def _reduce_78(val, _values, result) - result = [ @builder.splat(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 438) - def _reduce_79(val, _values, result) - result = [ @builder.splat(val[0], val[1]), - *val[3] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 443) - def _reduce_80(val, _values, result) - result = [ @builder.splat(val[0]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 447) - def _reduce_81(val, _values, result) - result = [ @builder.splat(val[0]), - *val[2] ] - - result - end -.,., - -# reduce 82 omitted - -module_eval(<<'.,.,', 'ruby22.y', 454) - def _reduce_83(val, _values, result) - result = @builder.begin(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 459) - def _reduce_84(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 463) - def _reduce_85(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 468) - def _reduce_86(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 472) - def _reduce_87(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 477) - def _reduce_88(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 481) - def _reduce_89(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 485) - def _reduce_90(val, _values, result) - result = @builder.index_asgn(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 489) - def _reduce_91(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 493) - def _reduce_92(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 497) - def _reduce_93(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 501) - def _reduce_94(val, _values, result) - result = @builder.assignable( - @builder.const_fetch(val[0], val[1], val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 506) - def _reduce_95(val, _values, result) - result = @builder.assignable( - @builder.const_global(val[0], val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 511) - def _reduce_96(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 516) - def _reduce_97(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 520) - def _reduce_98(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 524) - def _reduce_99(val, _values, result) - result = @builder.index_asgn(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 528) - def _reduce_100(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 532) - def _reduce_101(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 536) - def _reduce_102(val, _values, result) - result = @builder.attr_asgn(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 540) - def _reduce_103(val, _values, result) - result = @builder.assignable( - @builder.const_fetch(val[0], val[1], val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 545) - def _reduce_104(val, _values, result) - result = @builder.assignable( - @builder.const_global(val[0], val[1])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 550) - def _reduce_105(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 555) - def _reduce_106(val, _values, result) - diagnostic :error, :module_name_const, nil, val[0] - - result - end -.,., - -# reduce 107 omitted - -module_eval(<<'.,.,', 'ruby22.y', 561) - def _reduce_108(val, _values, result) - result = @builder.const_global(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 565) - def _reduce_109(val, _values, result) - result = @builder.const(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 569) - def _reduce_110(val, _values, result) - result = @builder.const_fetch(val[0], val[1], val[2]) - - result - end -.,., - -# reduce 111 omitted - -# reduce 112 omitted - -# reduce 113 omitted - -# reduce 114 omitted - -# reduce 115 omitted - -module_eval(<<'.,.,', 'ruby22.y', 578) - def _reduce_116(val, _values, result) - result = @builder.symbol(val[0]) - - result - end -.,., - -# reduce 117 omitted - -# reduce 118 omitted - -# reduce 119 omitted - -module_eval(<<'.,.,', 'ruby22.y', 587) - def _reduce_120(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 591) - def _reduce_121(val, _values, result) - @lexer.state = :expr_fname - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 595) - def _reduce_122(val, _values, result) - result = val[0] << val[3] - - result - end -.,., - -# reduce 123 omitted - -# reduce 124 omitted - -# reduce 125 omitted - -# reduce 126 omitted - -# reduce 127 omitted - -# reduce 128 omitted - -# reduce 129 omitted - -# reduce 130 omitted - -# reduce 131 omitted - -# reduce 132 omitted - -# reduce 133 omitted - -# reduce 134 omitted - -# reduce 135 omitted - -# reduce 136 omitted - -# reduce 137 omitted - -# reduce 138 omitted - -# reduce 139 omitted - -# reduce 140 omitted - -# reduce 141 omitted - -# reduce 142 omitted - -# reduce 143 omitted - -# reduce 144 omitted - -# reduce 145 omitted - -# reduce 146 omitted - -# reduce 147 omitted - -# reduce 148 omitted - -# reduce 149 omitted - -# reduce 150 omitted - -# reduce 151 omitted - -# reduce 152 omitted - -# reduce 153 omitted - -# reduce 154 omitted - -# reduce 155 omitted - -# reduce 156 omitted - -# reduce 157 omitted - -# reduce 158 omitted - -# reduce 159 omitted - -# reduce 160 omitted - -# reduce 161 omitted - -# reduce 162 omitted - -# reduce 163 omitted - -# reduce 164 omitted - -# reduce 165 omitted - -# reduce 166 omitted - -# reduce 167 omitted - -# reduce 168 omitted - -# reduce 169 omitted - -# reduce 170 omitted - -# reduce 171 omitted - -# reduce 172 omitted - -# reduce 173 omitted - -# reduce 174 omitted - -# reduce 175 omitted - -# reduce 176 omitted - -# reduce 177 omitted - -# reduce 178 omitted - -# reduce 179 omitted - -# reduce 180 omitted - -# reduce 181 omitted - -# reduce 182 omitted - -# reduce 183 omitted - -# reduce 184 omitted - -# reduce 185 omitted - -# reduce 186 omitted - -# reduce 187 omitted - -# reduce 188 omitted - -# reduce 189 omitted - -# reduce 190 omitted - -# reduce 191 omitted - -# reduce 192 omitted - -# reduce 193 omitted - -module_eval(<<'.,.,', 'ruby22.y', 616) - def _reduce_194(val, _values, result) - result = @builder.assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 620) - def _reduce_195(val, _values, result) - rescue_body = @builder.rescue_body(val[3], - nil, nil, nil, - nil, val[4]) - - rescue_ = @builder.begin_body(val[2], [ rescue_body ]) - - result = @builder.assign(val[0], val[1], rescue_) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 630) - def _reduce_196(val, _values, result) - result = @builder.op_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 634) - def _reduce_197(val, _values, result) - rescue_body = @builder.rescue_body(val[3], - nil, nil, nil, - nil, val[4]) - - rescue_ = @builder.begin_body(val[2], [ rescue_body ]) - - result = @builder.op_assign(val[0], val[1], rescue_) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 644) - def _reduce_198(val, _values, result) - result = @builder.op_assign( - @builder.index( - val[0], val[1], val[2], val[3]), - val[4], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 651) - def _reduce_199(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 658) - def _reduce_200(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 665) - def _reduce_201(val, _values, result) - result = @builder.op_assign( - @builder.call_method( - val[0], val[1], val[2]), - val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 672) - def _reduce_202(val, _values, result) - const = @builder.const_op_assignable( - @builder.const_fetch(val[0], val[1], val[2])) - result = @builder.op_assign(const, val[3], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 678) - def _reduce_203(val, _values, result) - const = @builder.const_op_assignable( - @builder.const_global(val[0], val[1])) - result = @builder.op_assign(const, val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 684) - def _reduce_204(val, _values, result) - result = @builder.op_assign(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 688) - def _reduce_205(val, _values, result) - result = @builder.range_inclusive(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 692) - def _reduce_206(val, _values, result) - result = @builder.range_exclusive(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 696) - def _reduce_207(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 700) - def _reduce_208(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 704) - def _reduce_209(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 708) - def _reduce_210(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 712) - def _reduce_211(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 716) - def _reduce_212(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 720) - def _reduce_213(val, _values, result) - result = @builder.unary_op(val[0], - @builder.binary_op( - val[1], val[2], val[3])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 726) - def _reduce_214(val, _values, result) - result = @builder.unary_op(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 730) - def _reduce_215(val, _values, result) - result = @builder.unary_op(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 734) - def _reduce_216(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 738) - def _reduce_217(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 742) - def _reduce_218(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 746) - def _reduce_219(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 750) - def _reduce_220(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 754) - def _reduce_221(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 758) - def _reduce_222(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 762) - def _reduce_223(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 766) - def _reduce_224(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 770) - def _reduce_225(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 774) - def _reduce_226(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 778) - def _reduce_227(val, _values, result) - result = @builder.match_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 782) - def _reduce_228(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 786) - def _reduce_229(val, _values, result) - result = @builder.not_op(val[0], nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 790) - def _reduce_230(val, _values, result) - result = @builder.unary_op(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 794) - def _reduce_231(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 798) - def _reduce_232(val, _values, result) - result = @builder.binary_op(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 802) - def _reduce_233(val, _values, result) - result = @builder.logical_op(:and, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 806) - def _reduce_234(val, _values, result) - result = @builder.logical_op(:or, val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 810) - def _reduce_235(val, _values, result) - result = @builder.keyword_cmd(:defined?, val[0], nil, [ val[2] ], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 820) - def _reduce_236(val, _values, result) - @lexer.push_cond - @lexer.cond.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 825) - def _reduce_237(val, _values, result) - @lexer.pop_cond - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 829) - def _reduce_238(val, _values, result) - result = @builder.ternary(val[0], val[1], - val[3], val[5], val[7]) - - result - end -.,., - -# reduce 239 omitted - -# reduce 240 omitted - -# reduce 241 omitted - -# reduce 242 omitted - -module_eval(<<'.,.,', 'ruby22.y', 840) - def _reduce_243(val, _values, result) - result = val[0] << @builder.associate(nil, val[2], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 844) - def _reduce_244(val, _values, result) - result = [ @builder.associate(nil, val[0], nil) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 849) - def _reduce_245(val, _values, result) - result = val - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 854) - def _reduce_246(val, _values, result) - result = [ nil, [], nil ] - - result - end -.,., - -# reduce 247 omitted - -module_eval(<<'.,.,', 'ruby22.y', 860) - def _reduce_248(val, _values, result) - result = [] - - result - end -.,., - -# reduce 249 omitted - -# reduce 250 omitted - -module_eval(<<'.,.,', 'ruby22.y', 866) - def _reduce_251(val, _values, result) - result = val[0] << @builder.associate(nil, val[2], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 870) - def _reduce_252(val, _values, result) - result = [ @builder.associate(nil, val[0], nil) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 875) - def _reduce_253(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 879) - def _reduce_254(val, _values, result) - result = val[0].concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 883) - def _reduce_255(val, _values, result) - result = [ @builder.associate(nil, val[0], nil) ] - result.concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 888) - def _reduce_256(val, _values, result) - assocs = @builder.associate(nil, val[2], nil) - result = val[0] << assocs - result.concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 894) - def _reduce_257(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 898) - def _reduce_258(val, _values, result) - result = @lexer.cmdarg.dup - @lexer.cmdarg.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 903) - def _reduce_259(val, _values, result) - @lexer.cmdarg = val[0] - - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 910) - def _reduce_260(val, _values, result) - result = @builder.block_pass(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 915) - def _reduce_261(val, _values, result) - result = [ val[1] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 919) - def _reduce_262(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 924) - def _reduce_263(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 928) - def _reduce_264(val, _values, result) - result = [ @builder.splat(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 932) - def _reduce_265(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 936) - def _reduce_266(val, _values, result) - result = val[0] << @builder.splat(val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 941) - def _reduce_267(val, _values, result) - result = @builder.array(nil, val[0], nil) - - result - end -.,., - -# reduce 268 omitted - -module_eval(<<'.,.,', 'ruby22.y', 947) - def _reduce_269(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 951) - def _reduce_270(val, _values, result) - result = val[0] << @builder.splat(val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 955) - def _reduce_271(val, _values, result) - result = [ @builder.splat(val[0], val[1]) ] - - result - end -.,., - -# reduce 272 omitted - -# reduce 273 omitted - -# reduce 274 omitted - -# reduce 275 omitted - -# reduce 276 omitted - -# reduce 277 omitted - -# reduce 278 omitted - -# reduce 279 omitted - -# reduce 280 omitted - -# reduce 281 omitted - -module_eval(<<'.,.,', 'ruby22.y', 970) - def _reduce_282(val, _values, result) - result = @builder.call_method(nil, nil, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 974) - def _reduce_283(val, _values, result) - result = @lexer.cmdarg.dup - @lexer.cmdarg.clear - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 979) - def _reduce_284(val, _values, result) - @lexer.cmdarg = val[1] - - result = @builder.begin_keyword(val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 985) - def _reduce_285(val, _values, result) - result = @lexer.cmdarg.dup - @lexer.cmdarg.clear - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 990) - def _reduce_286(val, _values, result) - @lexer.state = :expr_endarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 994) - def _reduce_287(val, _values, result) - @lexer.cmdarg = val[1] - - result = @builder.begin(val[0], val[2], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1000) - def _reduce_288(val, _values, result) - @lexer.state = :expr_endarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1004) - def _reduce_289(val, _values, result) - result = @builder.begin(val[0], nil, val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1008) - def _reduce_290(val, _values, result) - result = @builder.begin(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1012) - def _reduce_291(val, _values, result) - result = @builder.const_fetch(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1016) - def _reduce_292(val, _values, result) - result = @builder.const_global(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1020) - def _reduce_293(val, _values, result) - result = @builder.array(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1024) - def _reduce_294(val, _values, result) - result = @builder.associate(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1028) - def _reduce_295(val, _values, result) - result = @builder.keyword_cmd(:return, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1032) - def _reduce_296(val, _values, result) - result = @builder.keyword_cmd(:yield, val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1036) - def _reduce_297(val, _values, result) - result = @builder.keyword_cmd(:yield, val[0], val[1], [], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1040) - def _reduce_298(val, _values, result) - result = @builder.keyword_cmd(:yield, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1044) - def _reduce_299(val, _values, result) - result = @builder.keyword_cmd(:defined?, val[0], - val[2], [ val[3] ], val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1049) - def _reduce_300(val, _values, result) - result = @builder.not_op(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1053) - def _reduce_301(val, _values, result) - result = @builder.not_op(val[0], val[1], nil, val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1057) - def _reduce_302(val, _values, result) - method_call = @builder.call_method(nil, nil, val[0]) - - begin_t, args, body, end_t = val[1] - result = @builder.block(method_call, - begin_t, args, body, end_t) - - result - end -.,., - -# reduce 303 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1066) - def _reduce_304(val, _values, result) - begin_t, args, body, end_t = val[1] - result = @builder.block(val[0], - begin_t, args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1072) - def _reduce_305(val, _values, result) - lambda_call = @builder.call_lambda(val[0]) - - args, (begin_t, body, end_t) = val[1] - result = @builder.block(lambda_call, - begin_t, args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1080) - def _reduce_306(val, _values, result) - else_t, else_ = val[4] - result = @builder.condition(val[0], val[1], val[2], - val[3], else_t, - else_, val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1087) - def _reduce_307(val, _values, result) - else_t, else_ = val[4] - result = @builder.condition(val[0], val[1], val[2], - else_, else_t, - val[3], val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1094) - def _reduce_308(val, _values, result) - @lexer.cond.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1098) - def _reduce_309(val, _values, result) - @lexer.cond.pop - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1102) - def _reduce_310(val, _values, result) - result = @builder.loop(:while, val[0], val[2], val[3], - val[5], val[6]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1107) - def _reduce_311(val, _values, result) - @lexer.cond.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1111) - def _reduce_312(val, _values, result) - @lexer.cond.pop - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1115) - def _reduce_313(val, _values, result) - result = @builder.loop(:until, val[0], val[2], val[3], - val[5], val[6]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1120) - def _reduce_314(val, _values, result) - *when_bodies, (else_t, else_body) = *val[3] - - result = @builder.case(val[0], val[1], - when_bodies, else_t, else_body, - val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1128) - def _reduce_315(val, _values, result) - *when_bodies, (else_t, else_body) = *val[2] - - result = @builder.case(val[0], nil, - when_bodies, else_t, else_body, - val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1136) - def _reduce_316(val, _values, result) - @lexer.cond.push(true) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1140) - def _reduce_317(val, _values, result) - @lexer.cond.pop - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1144) - def _reduce_318(val, _values, result) - result = @builder.for(val[0], val[1], - val[2], val[4], - val[5], val[7], val[8]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1150) - def _reduce_319(val, _values, result) - @static_env.extend_static - @lexer.push_cmdarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1155) - def _reduce_320(val, _values, result) - if in_def? - diagnostic :error, :class_in_def, nil, val[0] - end - - lt_t, superclass = val[2] - result = @builder.def_class(val[0], val[1], - lt_t, superclass, - val[4], val[5]) - - @lexer.pop_cmdarg - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1169) - def _reduce_321(val, _values, result) - result = @def_level - @def_level = 0 - - @static_env.extend_static - @lexer.push_cmdarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1177) - def _reduce_322(val, _values, result) - result = @builder.def_sclass(val[0], val[1], val[2], - val[5], val[6]) - - @lexer.pop_cmdarg - @static_env.unextend - - @def_level = val[4] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1187) - def _reduce_323(val, _values, result) - @static_env.extend_static - @lexer.push_cmdarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1192) - def _reduce_324(val, _values, result) - if in_def? - diagnostic :error, :module_in_def, nil, val[0] - end - - result = @builder.def_module(val[0], val[1], - val[3], val[4]) - - @lexer.pop_cmdarg - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1204) - def _reduce_325(val, _values, result) - @def_level += 1 - @static_env.extend_static - @lexer.push_cmdarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1210) - def _reduce_326(val, _values, result) - result = @builder.def_method(val[0], val[1], - val[3], val[4], val[5]) - - @lexer.pop_cmdarg - @static_env.unextend - @def_level -= 1 - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1219) - def _reduce_327(val, _values, result) - @lexer.state = :expr_fname - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1223) - def _reduce_328(val, _values, result) - @def_level += 1 - @static_env.extend_static - @lexer.push_cmdarg - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1229) - def _reduce_329(val, _values, result) - result = @builder.def_singleton(val[0], val[1], val[2], - val[4], val[6], val[7], val[8]) - - @lexer.pop_cmdarg - @static_env.unextend - @def_level -= 1 - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1238) - def _reduce_330(val, _values, result) - result = @builder.keyword_cmd(:break, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1242) - def _reduce_331(val, _values, result) - result = @builder.keyword_cmd(:next, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1246) - def _reduce_332(val, _values, result) - result = @builder.keyword_cmd(:redo, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1250) - def _reduce_333(val, _values, result) - result = @builder.keyword_cmd(:retry, val[0]) - - result - end -.,., - -# reduce 334 omitted - -# reduce 335 omitted - -# reduce 336 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1259) - def _reduce_337(val, _values, result) - result = val[1] - - result - end -.,., - -# reduce 338 omitted - -# reduce 339 omitted - -# reduce 340 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1268) - def _reduce_341(val, _values, result) - else_t, else_ = val[4] - result = [ val[0], - @builder.condition(val[0], val[1], val[2], - val[3], else_t, - else_, nil), - ] - - result - end -.,., - -# reduce 342 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1279) - def _reduce_343(val, _values, result) - result = val - - result - end -.,., - -# reduce 344 omitted - -# reduce 345 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1287) - def _reduce_346(val, _values, result) - result = @builder.arg(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1291) - def _reduce_347(val, _values, result) - result = @builder.multi_lhs(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1296) - def _reduce_348(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1300) - def _reduce_349(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -# reduce 350 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1306) - def _reduce_351(val, _values, result) - result = val[0]. - push(@builder.restarg(val[2], val[3])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1311) - def _reduce_352(val, _values, result) - result = val[0]. - push(@builder.restarg(val[2], val[3])). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1317) - def _reduce_353(val, _values, result) - result = val[0]. - push(@builder.restarg(val[2])) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1322) - def _reduce_354(val, _values, result) - result = val[0]. - push(@builder.restarg(val[2])). - concat(val[4]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1328) - def _reduce_355(val, _values, result) - result = [ @builder.restarg(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1332) - def _reduce_356(val, _values, result) - result = [ @builder.restarg(val[0], val[1]), - *val[3] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1337) - def _reduce_357(val, _values, result) - result = [ @builder.restarg(val[0]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1341) - def _reduce_358(val, _values, result) - result = [ @builder.restarg(val[0]), - *val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1347) - def _reduce_359(val, _values, result) - result = val[0].concat(val[2]).concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1351) - def _reduce_360(val, _values, result) - result = val[0].concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1355) - def _reduce_361(val, _values, result) - result = val[0].concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1359) - def _reduce_362(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1365) - def _reduce_363(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1369) - def _reduce_364(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1374) - def _reduce_365(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1381) - def _reduce_366(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[6]). - concat(val[7]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1389) - def _reduce_367(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1395) - def _reduce_368(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1402) - def _reduce_369(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -# reduce 370 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1409) - def _reduce_371(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1416) - def _reduce_372(val, _values, result) - result = val[0].concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1420) - def _reduce_373(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1426) - def _reduce_374(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1433) - def _reduce_375(val, _values, result) - result = val[0]. - concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1438) - def _reduce_376(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1444) - def _reduce_377(val, _values, result) - result = val[0]. - concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1449) - def _reduce_378(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -# reduce 379 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1457) - def _reduce_380(val, _values, result) - result = @builder.args(nil, [], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1461) - def _reduce_381(val, _values, result) - @lexer.state = :expr_value - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1466) - def _reduce_382(val, _values, result) - result = @builder.args(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1470) - def _reduce_383(val, _values, result) - result = @builder.args(val[0], [], val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1474) - def _reduce_384(val, _values, result) - result = @builder.args(val[0], val[1].concat(val[2]), val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1479) - def _reduce_385(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1483) - def _reduce_386(val, _values, result) - result = val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1488) - def _reduce_387(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1492) - def _reduce_388(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1497) - def _reduce_389(val, _values, result) - result = @builder.shadowarg(val[0]) - - result - end -.,., - -# reduce 390 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1502) - def _reduce_391(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1506) - def _reduce_392(val, _values, result) - result = @lexer.cmdarg.dup - @lexer.cmdarg.clear - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1511) - def _reduce_393(val, _values, result) - @lexer.cmdarg = val[2] - @lexer.cmdarg.lexpop - - result = [ val[1], val[3] ] - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1521) - def _reduce_394(val, _values, result) - result = @builder.args(val[0], val[1].concat(val[2]), val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1525) - def _reduce_395(val, _values, result) - result = @builder.args(nil, val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1530) - def _reduce_396(val, _values, result) - result = [ val[0], val[1], val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1534) - def _reduce_397(val, _values, result) - result = [ val[0], val[1], val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1539) - def _reduce_398(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1543) - def _reduce_399(val, _values, result) - result = [ val[0], val[2], val[3], val[4] ] - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1550) - def _reduce_400(val, _values, result) - begin_t, block_args, body, end_t = val[1] - result = @builder.block(val[0], - begin_t, block_args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1556) - def _reduce_401(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1562) - def _reduce_402(val, _values, result) - lparen_t, args, rparen_t = val[3] - method_call = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - begin_t, args, body, end_t = val[4] - result = @builder.block(method_call, - begin_t, args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1572) - def _reduce_403(val, _values, result) - method_call = @builder.call_method(val[0], val[1], val[2], - nil, val[3], nil) - - begin_t, args, body, end_t = val[4] - result = @builder.block(method_call, - begin_t, args, body, end_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1582) - def _reduce_404(val, _values, result) - lparen_t, args, rparen_t = val[1] - result = @builder.call_method(nil, nil, val[0], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1588) - def _reduce_405(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1594) - def _reduce_406(val, _values, result) - lparen_t, args, rparen_t = val[3] - result = @builder.call_method(val[0], val[1], val[2], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1600) - def _reduce_407(val, _values, result) - result = @builder.call_method(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1604) - def _reduce_408(val, _values, result) - lparen_t, args, rparen_t = val[2] - result = @builder.call_method(val[0], val[1], nil, - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1610) - def _reduce_409(val, _values, result) - lparen_t, args, rparen_t = val[2] - result = @builder.call_method(val[0], val[1], nil, - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1616) - def _reduce_410(val, _values, result) - lparen_t, args, rparen_t = val[1] - result = @builder.keyword_cmd(:super, val[0], - lparen_t, args, rparen_t) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1622) - def _reduce_411(val, _values, result) - result = @builder.keyword_cmd(:zsuper, val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1626) - def _reduce_412(val, _values, result) - result = @builder.index(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1631) - def _reduce_413(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1635) - def _reduce_414(val, _values, result) - result = [ val[0], val[2], val[3], val[4] ] - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1641) - def _reduce_415(val, _values, result) - @static_env.extend_dynamic - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1645) - def _reduce_416(val, _values, result) - result = [ val[0], val[2], val[3], val[4] ] - - @static_env.unextend - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1652) - def _reduce_417(val, _values, result) - result = [ @builder.when(val[0], val[1], val[2], val[3]), - *val[4] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1658) - def _reduce_418(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -# reduce 419 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1664) - def _reduce_420(val, _values, result) - assoc_t, exc_var = val[2] - - if val[1] - exc_list = @builder.array(nil, val[1], nil) - end - - result = [ @builder.rescue_body(val[0], - exc_list, assoc_t, exc_var, - val[3], val[4]), - *val[5] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1677) - def _reduce_421(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1682) - def _reduce_422(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -# reduce 423 omitted - -# reduce 424 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1689) - def _reduce_425(val, _values, result) - result = [ val[0], val[1] ] - - result - end -.,., - -# reduce 426 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1695) - def _reduce_427(val, _values, result) - result = [ val[0], val[1] ] - - result - end -.,., - -# reduce 428 omitted - -# reduce 429 omitted - -# reduce 430 omitted - -# reduce 431 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1705) - def _reduce_432(val, _values, result) - result = @builder.string_compose(nil, val[0], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1710) - def _reduce_433(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1714) - def _reduce_434(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1719) - def _reduce_435(val, _values, result) - result = @builder.string_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1723) - def _reduce_436(val, _values, result) - result = @builder.string(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1727) - def _reduce_437(val, _values, result) - result = @builder.character(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1732) - def _reduce_438(val, _values, result) - result = @builder.xstring_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1737) - def _reduce_439(val, _values, result) - opts = @builder.regexp_options(val[3]) - result = @builder.regexp_compose(val[0], val[1], val[2], opts) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1743) - def _reduce_440(val, _values, result) - result = @builder.words_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1748) - def _reduce_441(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1752) - def _reduce_442(val, _values, result) - result = val[0] << @builder.word(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1757) - def _reduce_443(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1761) - def _reduce_444(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1766) - def _reduce_445(val, _values, result) - result = @builder.symbols_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1771) - def _reduce_446(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1775) - def _reduce_447(val, _values, result) - result = val[0] << @builder.word(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1780) - def _reduce_448(val, _values, result) - result = @builder.words_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1785) - def _reduce_449(val, _values, result) - result = @builder.symbols_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1790) - def _reduce_450(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1794) - def _reduce_451(val, _values, result) - result = val[0] << @builder.string_internal(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1799) - def _reduce_452(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1803) - def _reduce_453(val, _values, result) - result = val[0] << @builder.symbol_internal(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1808) - def _reduce_454(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1812) - def _reduce_455(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1817) - def _reduce_456(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1821) - def _reduce_457(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1826) - def _reduce_458(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1830) - def _reduce_459(val, _values, result) - result = val[0] << val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1835) - def _reduce_460(val, _values, result) - result = @builder.string_internal(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1839) - def _reduce_461(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1843) - def _reduce_462(val, _values, result) - @lexer.cond.push(false) - @lexer.cmdarg.push(false) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1848) - def _reduce_463(val, _values, result) - @lexer.cond.lexpop - @lexer.cmdarg.lexpop - - result = @builder.begin(val[0], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1856) - def _reduce_464(val, _values, result) - result = @builder.gvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1860) - def _reduce_465(val, _values, result) - result = @builder.ivar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1864) - def _reduce_466(val, _values, result) - result = @builder.cvar(val[0]) - - result - end -.,., - -# reduce 467 omitted - -module_eval(<<'.,.,', 'ruby22.y', 1871) - def _reduce_468(val, _values, result) - result = @builder.symbol(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1876) - def _reduce_469(val, _values, result) - result = @builder.symbol_compose(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1881) - def _reduce_470(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1885) - def _reduce_471(val, _values, result) - result = @builder.negate(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1890) - def _reduce_472(val, _values, result) - result = @builder.integer(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1894) - def _reduce_473(val, _values, result) - result = @builder.float(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1898) - def _reduce_474(val, _values, result) - result = @builder.rational(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1902) - def _reduce_475(val, _values, result) - result = @builder.complex(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1907) - def _reduce_476(val, _values, result) - result = @builder.ident(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1911) - def _reduce_477(val, _values, result) - result = @builder.ivar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1915) - def _reduce_478(val, _values, result) - result = @builder.gvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1919) - def _reduce_479(val, _values, result) - result = @builder.const(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1923) - def _reduce_480(val, _values, result) - result = @builder.cvar(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1928) - def _reduce_481(val, _values, result) - result = @builder.nil(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1932) - def _reduce_482(val, _values, result) - result = @builder.self(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1936) - def _reduce_483(val, _values, result) - result = @builder.true(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1940) - def _reduce_484(val, _values, result) - result = @builder.false(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1944) - def _reduce_485(val, _values, result) - result = @builder.__FILE__(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1948) - def _reduce_486(val, _values, result) - result = @builder.__LINE__(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1952) - def _reduce_487(val, _values, result) - result = @builder.__ENCODING__(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1957) - def _reduce_488(val, _values, result) - result = @builder.accessible(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1961) - def _reduce_489(val, _values, result) - result = @builder.accessible(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1966) - def _reduce_490(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1970) - def _reduce_491(val, _values, result) - result = @builder.assignable(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1975) - def _reduce_492(val, _values, result) - result = @builder.nth_ref(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1979) - def _reduce_493(val, _values, result) - result = @builder.back_ref(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1984) - def _reduce_494(val, _values, result) - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1988) - def _reduce_495(val, _values, result) - @lexer.state = :expr_value - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1992) - def _reduce_496(val, _values, result) - result = [ val[0], val[2] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 1996) - def _reduce_497(val, _values, result) - yyerrok - result = nil - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2002) - def _reduce_498(val, _values, result) - result = @builder.args(val[0], val[1], val[2]) - - @lexer.state = :expr_value - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2007) - def _reduce_499(val, _values, result) - result = @lexer.in_kwarg - @lexer.in_kwarg = true - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2012) - def _reduce_500(val, _values, result) - @lexer.in_kwarg = val[0] - result = @builder.args(nil, val[1], nil) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2018) - def _reduce_501(val, _values, result) - result = val[0].concat(val[2]).concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2022) - def _reduce_502(val, _values, result) - result = val[0].concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2026) - def _reduce_503(val, _values, result) - result = val[0].concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2030) - def _reduce_504(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2035) - def _reduce_505(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2039) - def _reduce_506(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2044) - def _reduce_507(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2051) - def _reduce_508(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[6]). - concat(val[7]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2059) - def _reduce_509(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2065) - def _reduce_510(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2072) - def _reduce_511(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2078) - def _reduce_512(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2085) - def _reduce_513(val, _values, result) - result = val[0]. - concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2090) - def _reduce_514(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2096) - def _reduce_515(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[4]). - concat(val[5]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2103) - def _reduce_516(val, _values, result) - result = val[0]. - concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2108) - def _reduce_517(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2114) - def _reduce_518(val, _values, result) - result = val[0]. - concat(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2119) - def _reduce_519(val, _values, result) - result = val[0]. - concat(val[2]). - concat(val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2125) - def _reduce_520(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2129) - def _reduce_521(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2134) - def _reduce_522(val, _values, result) - diagnostic :error, :argument_const, nil, val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2138) - def _reduce_523(val, _values, result) - diagnostic :error, :argument_ivar, nil, val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2142) - def _reduce_524(val, _values, result) - diagnostic :error, :argument_gvar, nil, val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2146) - def _reduce_525(val, _values, result) - diagnostic :error, :argument_cvar, nil, val[0] - - result - end -.,., - -# reduce 526 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2152) - def _reduce_527(val, _values, result) - @static_env.declare val[0][0] - - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2159) - def _reduce_528(val, _values, result) - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2164) - def _reduce_529(val, _values, result) - result = @builder.arg(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2168) - def _reduce_530(val, _values, result) - result = @builder.multi_lhs(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2173) - def _reduce_531(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2177) - def _reduce_532(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2182) - def _reduce_533(val, _values, result) - check_kwarg_name(val[0]) - - @static_env.declare val[0][0] - - result = val[0] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2191) - def _reduce_534(val, _values, result) - result = @builder.kwoptarg(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2195) - def _reduce_535(val, _values, result) - result = @builder.kwarg(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2200) - def _reduce_536(val, _values, result) - result = @builder.kwoptarg(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2204) - def _reduce_537(val, _values, result) - result = @builder.kwarg(val[0]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2209) - def _reduce_538(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2213) - def _reduce_539(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2218) - def _reduce_540(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2222) - def _reduce_541(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -# reduce 542 omitted - -# reduce 543 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2229) - def _reduce_544(val, _values, result) - @static_env.declare val[1][0] - - result = [ @builder.kwrestarg(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2235) - def _reduce_545(val, _values, result) - result = [ @builder.kwrestarg(val[0]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2240) - def _reduce_546(val, _values, result) - result = @builder.optarg(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2245) - def _reduce_547(val, _values, result) - result = @builder.optarg(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2250) - def _reduce_548(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2254) - def _reduce_549(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2259) - def _reduce_550(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2263) - def _reduce_551(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -# reduce 552 omitted - -# reduce 553 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2270) - def _reduce_554(val, _values, result) - @static_env.declare val[1][0] - - result = [ @builder.restarg(val[0], val[1]) ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2276) - def _reduce_555(val, _values, result) - result = [ @builder.restarg(val[0]) ] - - result - end -.,., - -# reduce 556 omitted - -# reduce 557 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2283) - def _reduce_558(val, _values, result) - @static_env.declare val[1][0] - - result = @builder.blockarg(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2290) - def _reduce_559(val, _values, result) - result = [ val[1] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2294) - def _reduce_560(val, _values, result) - result = [] - - result - end -.,., - -# reduce 561 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2300) - def _reduce_562(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2305) - def _reduce_563(val, _values, result) - result = [] - - result - end -.,., - -# reduce 564 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2311) - def _reduce_565(val, _values, result) - result = [ val[0] ] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2315) - def _reduce_566(val, _values, result) - result = val[0] << val[2] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2320) - def _reduce_567(val, _values, result) - result = @builder.pair(val[0], val[1], val[2]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2324) - def _reduce_568(val, _values, result) - result = @builder.pair_keyword(val[0], val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2328) - def _reduce_569(val, _values, result) - result = @builder.pair_quoted(val[0], val[1], val[2], val[3]) - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2332) - def _reduce_570(val, _values, result) - result = @builder.kwsplat(val[0], val[1]) - - result - end -.,., - -# reduce 571 omitted - -# reduce 572 omitted - -# reduce 573 omitted - -# reduce 574 omitted - -# reduce 575 omitted - -# reduce 576 omitted - -# reduce 577 omitted - -# reduce 578 omitted - -# reduce 579 omitted - -# reduce 580 omitted - -# reduce 581 omitted - -# reduce 582 omitted - -# reduce 583 omitted - -# reduce 584 omitted - -# reduce 585 omitted - -# reduce 586 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2343) - def _reduce_587(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'ruby22.y', 2347) - def _reduce_588(val, _values, result) - result = val[1] - - result - end -.,., - -# reduce 589 omitted - -# reduce 590 omitted - -# reduce 591 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2353) - def _reduce_592(val, _values, result) - yyerrok - - result - end -.,., - -# reduce 593 omitted - -# reduce 594 omitted - -# reduce 595 omitted - -module_eval(<<'.,.,', 'ruby22.y', 2362) - def _reduce_596(val, _values, result) - result = nil - - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Ruby22 -end # module Parser diff --git a/test/racc/regress/tp_plus b/test/racc/regress/tp_plus deleted file mode 100644 index 34b6284db7..0000000000 --- a/test/racc/regress/tp_plus +++ /dev/null @@ -1,1933 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' -module TPPlus - class Parser < Racc::Parser - -module_eval(<<'...end tp_plus.y/module_eval...', 'tp_plus.y', 592) - - include TPPlus::Nodes - - attr_reader :interpreter - def initialize(scanner, interpreter = TPPlus::Interpreter.new) - @scanner = scanner - @interpreter = interpreter - super() - end - - def next_token - t = @scanner.next_token - @interpreter.line_count += 1 if t && t[0] == :NEWLINE - - #puts t.inspect - t - end - - def parse - #@yydebug =true - - do_parse - @interpreter - end - - def on_error(t, val, vstack) - raise ParseError, sprintf("Parse error on line #{@scanner.tok_line} column #{@scanner.tok_col}: %s (%s)", - val.inspect, token_to_str(t) || '?') - end - - class ParseError < StandardError ; end -...end tp_plus.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 62, 62, 62, 62, 101, 122, 62, 41, 38, 130, - 275, 265, 72, 41, 72, 98, 113, 72, 53, 114, - 41, 67, 67, 67, 67, 234, 38, 26, 152, 151, - 101, 36, 64, 159, 81, 82, 72, 308, 159, 81, - 82, 72, 122, 70, 308, 60, 74, 60, 42, 308, - 60, 43, 44, 131, 45, 31, 32, 300, 75, 34, - 35, 46, 47, 102, 60, 273, 30, 72, 29, 28, - 25, 63, 76, 37, 27, 24, 62, 41, 38, 37, - 69, 69, 69, 69, 33, 61, 37, 97, 53, 102, - 61, 37, 81, 82, 355, 61, 103, 26, 82, 72, - 60, 36, 159, 81, 82, 72, 208, 221, 209, 371, - 82, 72, 105, 220, 33, 81, 82, 72, 42, 72, - 317, 43, 44, 111, 45, 31, 32, 96, 72, 34, - 35, 46, 47, 96, 60, 223, 30, 224, 29, 28, - 25, 63, 115, 37, 27, 24, 62, 41, 38, 72, - 60, 81, 82, 72, 33, 61, 121, 116, 53, 61, - 122, 88, 94, 96, 321, 117, 118, 26, 317, 352, - 125, 36, 323, 127, 203, 349, 350, 351, 353, 303, - 304, 96, 367, 81, 82, 72, 60, 255, 42, 209, - 101, 43, 44, 122, 45, 31, 32, 185, 94, 34, - 35, 46, 47, 186, 60, 191, 30, 61, 29, 28, - 25, 63, 321, 37, 27, 24, 62, 41, 38, 188, - 323, 122, 203, 122, 33, 61, 82, 72, 53, 336, - 335, 182, 181, 179, 180, 177, 173, 26, 176, 174, - 199, 36, 81, 82, 72, 81, 82, 72, 81, 82, - 72, 81, 82, 81, 82, 72, 200, 201, 42, 203, - 204, 43, 44, 96, 45, 31, 32, 210, 211, 34, - 35, 46, 47, 212, 60, 213, 30, 214, 29, 28, - 25, 63, 215, 37, 27, 24, 216, 178, 217, 175, - 81, 82, 72, 218, 33, 61, 81, 82, 72, 219, - 88, 317, 96, 81, 82, 72, 88, 227, 96, 81, - 82, 72, 227, 88, 96, 96, 81, 82, 72, 88, - 229, 96, 81, 82, 72, 60, 88, 230, 96, 231, - 234, 60, 88, 235, 96, 238, 122, 94, 60, 81, - 82, 72, 122, 94, 60, 321, 61, 81, 82, 72, - 94, 60, 61, 323, 241, 203, 94, 60, 242, 61, - 244, 245, 246, 94, 247, 61, 248, 249, 250, 94, - 251, 252, 61, 81, 82, 72, 253, 254, 61, 81, - 82, 72, 257, 88, 188, 96, 81, 82, 72, 88, - 259, 96, 81, 82, 72, 269, 88, 271, 96, 81, - 82, 72, 88, 276, 96, 122, 281, 282, 60, 88, - 283, 96, 284, 285, 60, 286, 287, 288, 289, 290, - 94, 60, 82, 292, 293, 294, 94, 60, 122, 61, - 122, 72, 298, 94, 60, 61, 301, 302, 305, 94, - 306, 313, 61, 314, 122, 122, 94, 325, 61, 135, - 136, 139, 140, 137, 138, 61, 141, 142, 144, 145, - 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, - 326, 141, 142, 144, 145, 146, 148, 143, 147, 327, - 328, 188, 97, 333, 275, 122, 33, 135, 136, 139, - 140, 137, 138, 205, 141, 142, 144, 145, 146, 148, - 143, 147, 188, 188, 333, 122, 346, 347, 207, 135, - 136, 139, 140, 137, 138, 348, 141, 142, 144, 145, - 146, 148, 143, 147, 188, 356, 357, 358, 359, 360, - 135, 136, 139, 140, 137, 138, 361, 141, 142, 144, - 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, - 138, 362, 141, 142, 144, 145, 146, 148, 143, 147, - 135, 136, 139, 140, 137, 138, 122, 141, 142, 144, - 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, - 138, 364, 141, 142, 144, 145, 146, 148, 143, 147, - 135, 136, 139, 140, 137, 138, 72, 141, 142, 144, - 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, - 138, 33, 141, 142, 144, 145, 146, 148, 143, 147, - 135, 136, 139, 140, 137, 138, 378, 141, 142, 144, - 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, - 138, 379, 141, 142, 144, 145, 146, 148, 143, 147, - 380, 381, 382, 383, 385, 386, 390, 72, 392 ] - -racc_action_check = [ - 3, 65, 309, 312, 72, 272, 0, 0, 0, 70, - 240, 232, 28, 295, 29, 36, 48, 105, 0, 48, - 296, 3, 65, 309, 312, 232, 383, 0, 95, 95, - 36, 0, 1, 97, 97, 97, 97, 295, 186, 186, - 186, 186, 343, 27, 296, 28, 30, 29, 0, 383, - 105, 0, 0, 70, 0, 0, 0, 272, 31, 0, - 0, 0, 0, 72, 0, 240, 0, 38, 0, 0, - 0, 0, 32, 0, 0, 0, 2, 2, 2, 295, - 3, 65, 309, 312, 0, 0, 296, 36, 2, 36, - 97, 383, 224, 224, 343, 186, 37, 2, 358, 358, - 38, 2, 209, 209, 209, 209, 153, 184, 153, 358, - 229, 229, 38, 184, 41, 88, 88, 88, 2, 44, - 301, 2, 2, 46, 2, 2, 2, 88, 47, 2, - 2, 2, 2, 301, 2, 187, 2, 187, 2, 2, - 2, 2, 53, 2, 2, 2, 188, 188, 188, 58, - 88, 35, 35, 35, 2, 2, 60, 55, 188, 209, - 63, 35, 88, 35, 301, 55, 55, 188, 337, 342, - 64, 188, 301, 68, 301, 342, 342, 342, 342, 280, - 280, 337, 357, 357, 357, 357, 35, 222, 188, 222, - 99, 188, 188, 101, 188, 188, 188, 102, 35, 188, - 188, 188, 188, 103, 188, 109, 188, 35, 188, 188, - 188, 188, 337, 188, 188, 188, 225, 225, 225, 111, - 337, 112, 337, 115, 188, 188, 293, 293, 225, 320, - 320, 98, 98, 98, 98, 98, 98, 225, 98, 98, - 117, 225, 34, 34, 34, 75, 75, 75, 234, 234, - 234, 98, 98, 238, 238, 238, 118, 121, 225, 123, - 132, 225, 225, 98, 225, 225, 225, 173, 174, 225, - 225, 225, 225, 175, 225, 176, 225, 177, 225, 225, - 225, 225, 178, 225, 225, 225, 179, 98, 180, 98, - 42, 42, 42, 181, 225, 225, 43, 43, 43, 182, - 42, 363, 42, 45, 45, 45, 43, 189, 43, 76, - 76, 76, 190, 45, 363, 45, 94, 94, 94, 76, - 191, 76, 113, 113, 113, 42, 94, 192, 94, 193, - 194, 43, 113, 197, 113, 201, 202, 42, 45, 326, - 326, 326, 203, 43, 76, 363, 42, 360, 360, 360, - 45, 94, 43, 363, 204, 363, 76, 113, 205, 45, - 210, 211, 212, 94, 213, 76, 214, 215, 216, 113, - 217, 218, 94, 114, 114, 114, 219, 221, 113, 116, - 116, 116, 226, 114, 227, 114, 134, 134, 134, 116, - 228, 116, 199, 199, 199, 235, 134, 239, 134, 200, - 200, 200, 199, 241, 199, 242, 244, 245, 114, 200, - 246, 200, 247, 248, 116, 249, 250, 251, 252, 253, - 114, 134, 254, 256, 260, 263, 116, 199, 265, 114, - 266, 269, 270, 134, 200, 116, 275, 277, 291, 199, - 292, 297, 134, 299, 300, 302, 200, 303, 199, 133, - 133, 133, 133, 133, 133, 200, 133, 133, 133, 133, - 133, 133, 133, 133, 150, 150, 150, 150, 150, 150, - 304, 150, 150, 150, 150, 150, 150, 150, 150, 306, - 307, 107, 308, 313, 315, 323, 325, 107, 107, 107, - 107, 107, 107, 133, 107, 107, 107, 107, 107, 107, - 107, 107, 328, 108, 331, 333, 338, 339, 150, 108, - 108, 108, 108, 108, 108, 340, 108, 108, 108, 108, - 108, 108, 108, 108, 110, 347, 349, 350, 351, 352, - 110, 110, 110, 110, 110, 110, 353, 110, 110, 110, - 110, 110, 110, 110, 110, 83, 83, 83, 83, 83, - 83, 354, 83, 83, 83, 83, 83, 83, 83, 83, - 195, 195, 195, 195, 195, 195, 355, 195, 195, 195, - 195, 195, 195, 195, 195, 196, 196, 196, 196, 196, - 196, 356, 196, 196, 196, 196, 196, 196, 196, 196, - 198, 198, 198, 198, 198, 198, 359, 198, 198, 198, - 198, 198, 198, 198, 198, 206, 206, 206, 206, 206, - 206, 361, 206, 206, 206, 206, 206, 206, 206, 206, - 236, 236, 236, 236, 236, 236, 365, 236, 236, 236, - 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, - 237, 366, 237, 237, 237, 237, 237, 237, 237, 237, - 368, 371, 372, 373, 376, 379, 384, 385, 387 ] - -racc_action_pointer = [ - 2, 32, 72, -4, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 13, -17, -15, - 20, -16, -2, nil, 215, 124, 13, 67, 38, nil, - nil, 32, 263, 269, 90, 276, 94, 99, -30, nil, - nil, nil, nil, 125, nil, 127, nil, nil, 120, nil, - 82, nil, nil, 135, 170, -3, nil, nil, 148, nil, - -17, nil, -13, nil, nil, 218, 282, nil, nil, nil, - nil, nil, nil, 514, nil, nil, nil, nil, 88, nil, - nil, nil, nil, nil, 289, 1, nil, 7, 224, 173, - nil, 168, 121, 129, nil, -12, nil, 456, 478, 154, - 499, 194, 196, 295, 346, 198, 352, 210, 226, nil, - nil, 231, nil, 179, nil, nil, nil, nil, nil, nil, - nil, nil, 183, 418, 359, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 433, nil, nil, 31, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 189, 190, 195, 197, 199, 204, 208, - 210, 215, 221, nil, 84, nil, 12, 60, 142, 260, - 265, 246, 279, 281, 269, 529, 544, 315, 559, 365, - 372, 258, 311, 317, 328, 341, 574, nil, nil, 76, - 332, 333, 334, 336, 338, 339, 340, 342, 343, 348, - nil, 303, 112, nil, 65, 212, 334, 359, 342, 82, - nil, nil, -36, nil, 221, 321, 589, 604, 226, 349, - -16, 328, 380, nil, 327, 328, 331, 333, 334, 336, - 337, 338, 339, 340, 394, nil, 346, nil, nil, nil, - 406, nil, nil, 377, nil, 403, 405, nil, nil, 402, - 357, nil, -20, nil, nil, 360, nil, 420, nil, nil, - 124, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 363, 414, 198, nil, 8, 15, 366, nil, 362, - 419, 94, 420, 373, 396, nil, 404, 405, 408, -2, - nil, nil, -1, 466, nil, 458, nil, nil, nil, nil, - 202, nil, nil, 460, nil, 404, 312, nil, 477, nil, - nil, 487, nil, 480, nil, nil, nil, 142, 431, 430, - 467, nil, 156, 17, nil, nil, nil, 499, nil, 452, - 453, 454, 455, 462, 472, 541, 506, 156, 70, 567, - 320, 529, nil, 275, nil, 551, 564, nil, 575, nil, - nil, 623, 577, 576, nil, nil, 577, nil, nil, 629, - nil, nil, nil, 20, 581, 628, nil, 583, nil, nil, - nil, nil, nil ] - -racc_action_default = [ - -2, -210, -1, -188, -8, -9, -10, -11, -12, -13, - -14, -15, -16, -17, -18, -19, -20, -21, -22, -23, - -24, -25, -26, -27, -28, -29, -30, -210, -210, -210, - -210, -210, -210, -45, -210, -210, -118, -210, -210, -61, - -62, -210, -210, -210, -210, -210, -210, -210, -81, -84, - -85, -86, -87, -210, -111, -210, -116, -117, -210, -125, - -210, -183, -184, -190, -210, -188, -3, -185, -7, -187, - -210, -34, -118, -35, -36, -210, -210, -46, -103, -104, - -158, -159, -160, -47, -128, -129, -130, -131, -210, -148, - -149, -150, -151, -152, -210, -210, -157, -52, -210, -119, - -121, -190, -210, -210, -58, -210, -63, -210, -210, -210, - -210, -210, -190, -210, -210, -190, -210, -210, -210, -120, - -126, -210, -189, -210, -192, 393, -4, -6, -186, -31, - -32, -33, -210, -210, -210, -134, -135, -136, -137, -138, - -139, -140, -141, -142, -143, -144, -145, -146, -147, -132, - -210, -155, -156, -210, -50, -53, -54, -55, -56, -57, - -112, -161, -162, -163, -164, -165, -166, -167, -168, -169, - -170, -171, -172, -210, -210, -210, -210, -210, -210, -210, - -210, -210, -210, -122, -210, -127, -52, -210, -210, -89, - -89, -210, -210, -210, -210, -82, -83, -210, -113, -210, - -210, -210, -190, -190, -210, -38, -133, -153, -48, -210, - -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, - -123, -210, -210, -59, -210, -5, -210, -210, -210, -210, - -67, -70, -78, -72, -210, -210, -114, -115, -210, -210, - -210, -210, -190, -51, -210, -210, -210, -210, -210, -210, - -210, -210, -210, -210, -210, -49, -210, -64, -88, -65, - -210, -68, -69, -210, -73, -190, -190, -75, -76, -210, - -210, -191, -190, -194, -195, -210, -37, -39, -41, -42, - -210, -173, -174, -175, -176, -177, -178, -179, -180, -181, - -182, -210, -210, -210, -71, -210, -210, -210, -154, -210, - -190, -205, -190, -210, -210, -124, -210, -210, -210, -188, - -79, -80, -188, -210, -193, -210, -197, -198, -199, -200, - -210, -203, -204, -190, -40, -210, -210, -60, -210, -77, - -74, -90, -91, -190, -196, -201, -202, -205, -210, -210, - -210, -92, -210, -190, -207, -209, -43, -210, -66, -210, - -210, -210, -210, -210, -210, -190, -210, -210, -210, -210, - -210, -210, -206, -205, -44, -210, -210, -110, -210, -98, - -99, -210, -210, -210, -107, -108, -102, -208, -93, -210, - -94, -100, -95, -210, -210, -210, -109, -210, -105, -106, - -97, -101, -96 ] - -racc_goto_table = [ - 39, 106, 39, 66, 78, 65, 123, 68, 77, 184, - 9, 2, 9, 153, 40, 261, 40, 274, 310, 310, - 194, 189, 190, 197, 192, 193, 71, 73, 39, 39, - 277, 260, 233, 344, 79, 1, 104, 322, 39, 332, - 291, 128, 40, 40, 109, 78, 129, 112, 243, 132, - 311, 311, 40, 83, 226, 228, 389, 341, 232, 377, - 107, 108, 263, 110, 266, 126, 331, 155, 167, 68, - 264, 309, 312, 322, 365, 79, 368, 373, 387, 261, - 384, 160, 119, 183, 120, 149, 168, 161, 162, 163, - 324, 164, 334, 165, 133, 307, 166, 156, 169, 322, - 170, 171, 222, 187, 172, 39, 388, 158, 202, 272, - 316, 343, 150, nil, nil, nil, nil, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 195, 196, nil, 198, nil, nil, nil, nil, nil, - nil, 258, nil, nil, 369, 239, 240, nil, nil, nil, - 280, nil, 206, nil, nil, nil, 155, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 295, 296, nil, nil, nil, nil, 155, - nil, nil, nil, nil, nil, nil, 156, nil, 39, nil, - nil, nil, nil, nil, 256, nil, 158, nil, 9, 225, - nil, nil, 40, nil, 267, nil, nil, nil, 78, 156, - 280, nil, 270, nil, nil, 299, nil, 236, 237, 158, - nil, nil, nil, nil, nil, 39, nil, nil, 65, 262, - nil, nil, nil, nil, 268, 9, nil, nil, 79, 40, - nil, 342, 340, 315, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 337, nil, nil, 297, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 338, 354, nil, nil, nil, - nil, nil, nil, 262, nil, nil, 78, nil, 363, nil, - 339, nil, nil, nil, nil, nil, nil, nil, nil, 329, - nil, nil, 330, 68, nil, nil, 68, nil, nil, nil, - nil, 376, nil, nil, nil, nil, 79, 78, nil, nil, - 375, 366, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 79, 370, 372, - 374, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 391 ] - -racc_goto_check = [ - 40, 35, 40, 4, 39, 3, 86, 7, 29, 34, - 12, 2, 12, 37, 43, 47, 43, 89, 36, 36, - 34, 5, 5, 34, 5, 5, 28, 28, 40, 40, - 31, 46, 50, 94, 40, 1, 28, 75, 40, 56, - 47, 6, 43, 43, 40, 39, 27, 40, 38, 29, - 44, 44, 43, 30, 45, 45, 42, 56, 48, 94, - 30, 30, 49, 30, 51, 4, 55, 39, 39, 7, - 50, 52, 52, 75, 57, 40, 58, 59, 60, 47, - 61, 62, 63, 67, 68, 71, 73, 76, 77, 78, - 31, 79, 89, 80, 30, 46, 81, 40, 82, 75, - 83, 84, 37, 28, 85, 40, 36, 12, 87, 88, - 90, 93, 30, nil, nil, nil, nil, nil, nil, 43, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 30, 30, nil, 30, nil, nil, nil, nil, nil, - nil, 5, nil, nil, 47, 86, 86, nil, nil, nil, - 34, nil, 30, nil, nil, nil, 39, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 34, 34, nil, nil, nil, nil, 39, - nil, nil, nil, nil, nil, nil, 40, nil, 40, nil, - nil, nil, nil, nil, 39, nil, 12, nil, 12, 2, - nil, nil, 43, nil, 39, nil, nil, nil, 39, 40, - 34, nil, 29, nil, nil, 86, nil, 30, 30, 12, - nil, nil, nil, nil, nil, 40, nil, nil, 3, 40, - nil, nil, nil, nil, 40, 12, nil, nil, 40, 43, - nil, 34, 5, 86, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 86, nil, nil, 40, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 35, 86, nil, nil, nil, - nil, nil, nil, 40, nil, nil, 39, nil, 86, nil, - 29, nil, nil, nil, nil, nil, nil, nil, nil, 4, - nil, nil, 4, 7, nil, nil, 7, nil, nil, nil, - nil, 35, nil, nil, nil, nil, 40, 39, nil, nil, - 39, 29, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 40, 40, 40, - 40, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 40 ] - -racc_goto_pointer = [ - nil, 35, 11, 3, 0, -86, -27, 4, nil, nil, - nil, nil, 10, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, -24, -2, -26, - 18, -212, nil, nil, -92, -40, -277, -84, -161, -30, - 0, nil, -327, 14, -245, -135, -198, -214, -136, -170, - -162, -170, -224, nil, nil, -247, -274, -283, -282, -283, - -305, -296, -17, 24, nil, nil, nil, -16, 26, nil, - nil, -3, nil, -12, nil, -264, -11, -10, -9, -7, - -5, -2, 0, 2, 3, 6, -57, -15, -131, -223, - -191, nil, nil, -226, -304 ] - -racc_goto_default = [ - nil, nil, nil, 3, nil, nil, nil, 4, 5, 6, - 7, 8, 87, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, nil, 55, nil, - nil, nil, 278, 279, 124, 54, 52, nil, 154, 89, - 91, 157, 51, 92, 49, nil, nil, 80, nil, nil, - nil, nil, nil, 48, 50, nil, nil, nil, nil, nil, - nil, nil, nil, 56, 57, 99, 58, 100, 59, 84, - 85, 86, 134, 90, 93, 95, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 318, nil, nil, - 345, 319, 320, nil, nil ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 86, :_reduce_1, - 0, 86, :_reduce_none, - 2, 87, :_reduce_3, - 3, 87, :_reduce_4, - 2, 90, :_reduce_5, - 1, 91, :_reduce_none, - 0, 91, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_none, - 1, 88, :_reduce_28, - 1, 88, :_reduce_29, - 1, 111, :_reduce_30, - 3, 110, :_reduce_31, - 1, 112, :_reduce_none, - 1, 112, :_reduce_none, - 2, 109, :_reduce_34, - 2, 107, :_reduce_35, - 2, 106, :_reduce_36, - 6, 104, :_reduce_37, - 4, 104, :_reduce_38, - 6, 104, :_reduce_39, - 8, 104, :_reduce_40, - 1, 116, :_reduce_none, - 1, 116, :_reduce_none, - 5, 117, :_reduce_43, - 7, 118, :_reduce_44, - 1, 120, :_reduce_45, - 2, 102, :_reduce_46, - 2, 103, :_reduce_47, - 4, 121, :_reduce_48, - 5, 121, :_reduce_49, - 1, 122, :_reduce_50, - 3, 122, :_reduce_51, - 0, 122, :_reduce_52, - 1, 123, :_reduce_none, - 1, 123, :_reduce_none, - 1, 123, :_reduce_none, - 1, 123, :_reduce_none, - 1, 126, :_reduce_57, - 2, 127, :_reduce_58, - 4, 127, :_reduce_59, - 8, 127, :_reduce_60, - 1, 113, :_reduce_none, - 1, 113, :_reduce_none, - 2, 129, :_reduce_63, - 5, 98, :_reduce_64, - 5, 98, :_reduce_65, - 10, 100, :_reduce_66, - 4, 101, :_reduce_67, - 1, 131, :_reduce_none, - 1, 131, :_reduce_none, - 4, 94, :_reduce_70, - 6, 105, :_reduce_71, - 1, 133, :_reduce_72, - 2, 133, :_reduce_73, - 5, 135, :_reduce_74, - 1, 136, :_reduce_none, - 1, 136, :_reduce_none, - 4, 134, :_reduce_77, - 0, 134, :_reduce_none, - 1, 137, :_reduce_none, - 1, 137, :_reduce_none, - 1, 99, :_reduce_none, - 3, 99, :_reduce_82, - 3, 99, :_reduce_83, - 1, 138, :_reduce_none, - 1, 138, :_reduce_none, - 1, 138, :_reduce_none, - 1, 138, :_reduce_none, - 2, 130, :_reduce_88, - 0, 130, :_reduce_89, - 8, 95, :_reduce_90, - 1, 140, :_reduce_91, - 2, 140, :_reduce_92, - 6, 141, :_reduce_93, - 6, 141, :_reduce_94, - 6, 141, :_reduce_95, - 8, 141, :_reduce_96, - 7, 141, :_reduce_97, - 1, 143, :_reduce_none, - 1, 143, :_reduce_none, - 2, 143, :_reduce_100, - 2, 146, :_reduce_101, - 0, 146, :_reduce_none, - 1, 114, :_reduce_none, - 1, 114, :_reduce_none, - 1, 145, :_reduce_none, - 1, 145, :_reduce_none, - 1, 144, :_reduce_none, - 1, 144, :_reduce_none, - 3, 142, :_reduce_109, - 1, 142, :_reduce_110, - 1, 96, :_reduce_111, - 3, 93, :_reduce_112, - 3, 139, :_reduce_113, - 4, 139, :_reduce_114, - 4, 139, :_reduce_115, - 1, 125, :_reduce_none, - 1, 125, :_reduce_none, - 1, 148, :_reduce_118, - 2, 148, :_reduce_119, - 2, 149, :_reduce_120, - 1, 150, :_reduce_121, - 2, 150, :_reduce_122, - 3, 152, :_reduce_123, - 6, 152, :_reduce_124, - 1, 151, :_reduce_125, - 2, 151, :_reduce_126, - 3, 153, :_reduce_127, - 1, 115, :_reduce_none, - 1, 115, :_reduce_none, - 1, 154, :_reduce_130, - 1, 154, :_reduce_none, - 2, 154, :_reduce_132, - 3, 155, :_reduce_133, - 1, 157, :_reduce_134, - 1, 157, :_reduce_135, - 1, 157, :_reduce_136, - 1, 157, :_reduce_137, - 1, 157, :_reduce_138, - 1, 157, :_reduce_139, - 1, 157, :_reduce_140, - 1, 157, :_reduce_141, - 1, 157, :_reduce_142, - 1, 157, :_reduce_143, - 1, 157, :_reduce_144, - 1, 157, :_reduce_145, - 1, 157, :_reduce_146, - 1, 157, :_reduce_147, - 1, 156, :_reduce_none, - 1, 156, :_reduce_none, - 1, 156, :_reduce_none, - 1, 156, :_reduce_none, - 1, 156, :_reduce_none, - 3, 159, :_reduce_153, - 6, 128, :_reduce_154, - 2, 158, :_reduce_155, - 2, 158, :_reduce_156, - 1, 160, :_reduce_157, - 1, 124, :_reduce_none, - 1, 124, :_reduce_159, - 1, 132, :_reduce_160, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 1, 147, :_reduce_none, - 4, 170, :_reduce_173, - 4, 169, :_reduce_174, - 4, 168, :_reduce_175, - 4, 167, :_reduce_176, - 4, 166, :_reduce_177, - 4, 165, :_reduce_178, - 4, 161, :_reduce_179, - 4, 164, :_reduce_180, - 4, 162, :_reduce_181, - 4, 163, :_reduce_182, - 1, 97, :_reduce_183, - 1, 92, :_reduce_184, - 1, 89, :_reduce_185, - 2, 89, :_reduce_186, - 1, 89, :_reduce_none, - 0, 89, :_reduce_none, - 1, 119, :_reduce_189, - 0, 119, :_reduce_none, - 5, 108, :_reduce_191, - 1, 171, :_reduce_none, - 5, 172, :_reduce_193, - 3, 172, :_reduce_194, - 1, 173, :_reduce_195, - 4, 173, :_reduce_196, - 3, 174, :_reduce_197, - 1, 175, :_reduce_none, - 1, 175, :_reduce_none, - 1, 175, :_reduce_none, - 2, 175, :_reduce_201, - 2, 175, :_reduce_202, - 1, 175, :_reduce_203, - 1, 177, :_reduce_none, - 0, 177, :_reduce_none, - 5, 176, :_reduce_206, - 1, 178, :_reduce_207, - 4, 178, :_reduce_208, - 1, 179, :_reduce_none ] - -racc_reduce_n = 210 - -racc_shift_n = 393 - -racc_token_table = { - false => 0, - :error => 1, - :ASSIGN => 2, - :AT_SYM => 3, - :COMMENT => 4, - :JUMP => 5, - :IO_METHOD => 6, - :INPUT => 7, - :OUTPUT => 8, - :NUMREG => 9, - :POSREG => 10, - :VREG => 11, - :SREG => 12, - :TIME_SEGMENT => 13, - :ARG => 14, - :UALM => 15, - :MOVE => 16, - :DOT => 17, - :TO => 18, - :AT => 19, - :TERM => 20, - :OFFSET => 21, - :SKIP => 22, - :GROUP => 23, - :SEMICOLON => 24, - :NEWLINE => 25, - :STRING => 26, - :REAL => 27, - :DIGIT => 28, - :WORD => 29, - :EQUAL => 30, - :EEQUAL => 31, - :NOTEQUAL => 32, - :GTE => 33, - :LTE => 34, - :LT => 35, - :GT => 36, - :BANG => 37, - :PLUS => 38, - :MINUS => 39, - :STAR => 40, - :SLASH => 41, - :DIV => 42, - :AND => 43, - :OR => 44, - :MOD => 45, - :IF => 46, - :ELSE => 47, - :END => 48, - :UNLESS => 49, - :FOR => 50, - :IN => 51, - :WHILE => 52, - :WAIT_FOR => 53, - :WAIT_UNTIL => 54, - :TIMEOUT => 55, - :AFTER => 56, - :FANUC_USE => 57, - :SET_SKIP_CONDITION => 58, - :NAMESPACE => 59, - :CASE => 60, - :WHEN => 61, - :INDIRECT => 62, - :POSITION => 63, - :EVAL => 64, - :TIMER => 65, - :TIMER_METHOD => 66, - :RAISE => 67, - :ABORT => 68, - :POSITION_DATA => 69, - :TRUE_FALSE => 70, - :RUN => 71, - :TP_HEADER => 72, - :PAUSE => 73, - :LPAREN => 74, - :RPAREN => 75, - :COLON => 76, - :COMMA => 77, - :LBRACK => 78, - :RBRACK => 79, - :LBRACE => 80, - :RBRACE => 81, - :LABEL => 82, - :ADDRESS => 83, - :false => 84 } - -racc_nt_base = 85 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "ASSIGN", - "AT_SYM", - "COMMENT", - "JUMP", - "IO_METHOD", - "INPUT", - "OUTPUT", - "NUMREG", - "POSREG", - "VREG", - "SREG", - "TIME_SEGMENT", - "ARG", - "UALM", - "MOVE", - "DOT", - "TO", - "AT", - "TERM", - "OFFSET", - "SKIP", - "GROUP", - "SEMICOLON", - "NEWLINE", - "STRING", - "REAL", - "DIGIT", - "WORD", - "EQUAL", - "EEQUAL", - "NOTEQUAL", - "GTE", - "LTE", - "LT", - "GT", - "BANG", - "PLUS", - "MINUS", - "STAR", - "SLASH", - "DIV", - "AND", - "OR", - "MOD", - "IF", - "ELSE", - "END", - "UNLESS", - "FOR", - "IN", - "WHILE", - "WAIT_FOR", - "WAIT_UNTIL", - "TIMEOUT", - "AFTER", - "FANUC_USE", - "SET_SKIP_CONDITION", - "NAMESPACE", - "CASE", - "WHEN", - "INDIRECT", - "POSITION", - "EVAL", - "TIMER", - "TIMER_METHOD", - "RAISE", - "ABORT", - "POSITION_DATA", - "TRUE_FALSE", - "RUN", - "TP_HEADER", - "PAUSE", - "LPAREN", - "RPAREN", - "COLON", - "COMMA", - "LBRACK", - "RBRACK", - "LBRACE", - "RBRACE", - "LABEL", - "ADDRESS", - "false", - "$start", - "program", - "statements", - "statement", - "terminator", - "block", - "optional_newline", - "comment", - "definition", - "namespace", - "motion_statement", - "label_definition", - "address", - "conditional", - "inline_conditional", - "forloop", - "while_loop", - "use_statement", - "set_skip_statement", - "wait_statement", - "case_statement", - "fanuc_eval", - "timer_method", - "position_data", - "raise", - "tp_header_definition", - "empty_stmt", - "tp_header_value", - "var_or_indirect", - "indirectable", - "expression", - "wait_modifier", - "timeout_modifier", - "after_modifier", - "swallow_newlines", - "label", - "program_call", - "args", - "arg", - "number", - "var", - "string", - "io_method", - "indirect_thing", - "jump", - "else_block", - "minmax_val", - "integer", - "case_conditions", - "case_else", - "case_condition", - "case_allowed_condition", - "case_allowed_statement", - "inlineable", - "assignment", - "motion_modifiers", - "motion_modifier", - "speed", - "valid_terminations", - "time", - "time_seg_actions", - "optional_lpos_arg", - "definable", - "var_without_namespaces", - "var_with_namespaces", - "var_method_modifiers", - "namespaces", - "var_method_modifier", - "ns", - "unary_expression", - "binary_expression", - "factor", - "operator", - "signed_number", - "paren_expr", - "sign", - "numreg", - "output", - "input", - "posreg", - "position", - "vreg", - "argument", - "timer", - "ualm", - "sreg", - "sn", - "hash", - "hash_attributes", - "hash_attribute", - "hash_value", - "array", - "optional_sign", - "array_values", - "array_value" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 35) - def _reduce_1(val, _values, result) - @interpreter.nodes = val[0] - result - end -.,., - -# reduce 2 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 42) - def _reduce_3(val, _values, result) - result = [val[0]] - result << val[1] unless val[1].nil? - - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 46) - def _reduce_4(val, _values, result) - result = val[0] << val[1] - result << val[2] unless val[2].nil? - - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 52) - def _reduce_5(val, _values, result) - result = val[1] - result - end -.,., - -# reduce 6 omitted - -# reduce 7 omitted - -# reduce 8 omitted - -# reduce 9 omitted - -# reduce 10 omitted - -# reduce 11 omitted - -# reduce 12 omitted - -# reduce 13 omitted - -# reduce 14 omitted - -# reduce 15 omitted - -# reduce 16 omitted - -# reduce 17 omitted - -# reduce 18 omitted - -# reduce 19 omitted - -# reduce 20 omitted - -# reduce 21 omitted - -# reduce 22 omitted - -# reduce 23 omitted - -# reduce 24 omitted - -# reduce 25 omitted - -# reduce 26 omitted - -# reduce 27 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 85) - def _reduce_28(val, _values, result) - result = PauseNode.new - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 86) - def _reduce_29(val, _values, result) - result = AbortNode.new - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 90) - def _reduce_30(val, _values, result) - result = EmptyStmtNode.new() - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 94) - def _reduce_31(val, _values, result) - result = HeaderNode.new(val[0],val[2]) - result - end -.,., - -# reduce 32 omitted - -# reduce 33 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 103) - def _reduce_34(val, _values, result) - result = RaiseNode.new(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 107) - def _reduce_35(val, _values, result) - result = TimerMethodNode.new(val[0],val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 111) - def _reduce_36(val, _values, result) - result = EvalNode.new(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 116) - def _reduce_37(val, _values, result) - result = WaitForNode.new(val[2], val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 118) - def _reduce_38(val, _values, result) - result = WaitUntilNode.new(val[2], nil) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 120) - def _reduce_39(val, _values, result) - result = WaitUntilNode.new(val[2],val[5]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 122) - def _reduce_40(val, _values, result) - result = WaitUntilNode.new(val[2],val[5].merge(val[7])) - result - end -.,., - -# reduce 41 omitted - -# reduce 42 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 132) - def _reduce_43(val, _values, result) - result = { label: val[3] } - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 137) - def _reduce_44(val, _values, result) - result = { timeout: [val[3],val[5]] } - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 141) - def _reduce_45(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 145) - def _reduce_46(val, _values, result) - result = UseNode.new(val[0],val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 150) - def _reduce_47(val, _values, result) - result = SetSkipNode.new(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 154) - def _reduce_48(val, _values, result) - result = CallNode.new(val[0],val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 155) - def _reduce_49(val, _values, result) - result = CallNode.new(val[1],val[3],async: true) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 159) - def _reduce_50(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 160) - def _reduce_51(val, _values, result) - result = val[0] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 161) - def _reduce_52(val, _values, result) - result = [] - result - end -.,., - -# reduce 53 omitted - -# reduce 54 omitted - -# reduce 55 omitted - -# reduce 56 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 172) - def _reduce_57(val, _values, result) - result = StringNode.new(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 176) - def _reduce_58(val, _values, result) - result = IOMethodNode.new(val[0],val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 178) - def _reduce_59(val, _values, result) - result = IOMethodNode.new(val[0],val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 180) - def _reduce_60(val, _values, result) - result = IOMethodNode.new(val[0],val[2],{ pulse_time: val[4], pulse_units: val[6] }) - result - end -.,., - -# reduce 61 omitted - -# reduce 62 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 190) - def _reduce_63(val, _values, result) - result = JumpNode.new(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 195) - def _reduce_64(val, _values, result) - result = ConditionalNode.new("if",val[1],val[2],val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 197) - def _reduce_65(val, _values, result) - result = ConditionalNode.new("unless",val[1],val[2],val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 202) - def _reduce_66(val, _values, result) - result = ForNode.new(val[1],val[4],val[6],val[8]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 206) - def _reduce_67(val, _values, result) - result = WhileNode.new(val[1],val[2]) - result - end -.,., - -# reduce 68 omitted - -# reduce 69 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 215) - def _reduce_70(val, _values, result) - result = NamespaceNode.new(val[1],val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 222) - def _reduce_71(val, _values, result) - result = CaseNode.new(val[1],val[3],val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 226) - def _reduce_72(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 228) - def _reduce_73(val, _values, result) - result = val[0] << val[1] << val[2] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 233) - def _reduce_74(val, _values, result) - result = CaseConditionNode.new(val[1],val[3]) - result - end -.,., - -# reduce 75 omitted - -# reduce 76 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 243) - def _reduce_77(val, _values, result) - result = CaseConditionNode.new(nil,val[2]) - result - end -.,., - -# reduce 78 omitted - -# reduce 79 omitted - -# reduce 80 omitted - -# reduce 81 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 254) - def _reduce_82(val, _values, result) - result = InlineConditionalNode.new(val[1], val[2], val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 255) - def _reduce_83(val, _values, result) - result = InlineConditionalNode.new(val[1], val[2], val[0]) - result - end -.,., - -# reduce 84 omitted - -# reduce 85 omitted - -# reduce 86 omitted - -# reduce 87 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 266) - def _reduce_88(val, _values, result) - result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 267) - def _reduce_89(val, _values, result) - result = [] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 272) - def _reduce_90(val, _values, result) - result = MotionNode.new(val[0],val[5],val[7]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 276) - def _reduce_91(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 278) - def _reduce_92(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 283) - def _reduce_93(val, _values, result) - result = SpeedNode.new(val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 285) - def _reduce_94(val, _values, result) - result = TerminationNode.new(val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 287) - def _reduce_95(val, _values, result) - result = OffsetNode.new(val[2],val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 289) - def _reduce_96(val, _values, result) - result = TimeNode.new(val[2],val[4],val[6]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 291) - def _reduce_97(val, _values, result) - result = SkipNode.new(val[4],val[5]) - result - end -.,., - -# reduce 98 omitted - -# reduce 99 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 298) - def _reduce_100(val, _values, result) - raise Racc::ParseError, sprintf("\ninvalid termination type: (%s)", val[1]) if val[1] != 1 - - result = DigitNode.new(val[1].to_i * -1) - - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 305) - def _reduce_101(val, _values, result) - result = val[1] - result - end -.,., - -# reduce 102 omitted - -# reduce 103 omitted - -# reduce 104 omitted - -# reduce 105 omitted - -# reduce 106 omitted - -# reduce 107 omitted - -# reduce 108 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 325) - def _reduce_109(val, _values, result) - result = { speed: val[0], units: val[2] } - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 326) - def _reduce_110(val, _values, result) - result = { speed: val[0], units: nil } - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 330) - def _reduce_111(val, _values, result) - result = LabelDefinitionNode.new(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 334) - def _reduce_112(val, _values, result) - result = DefinitionNode.new(val[0],val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 338) - def _reduce_113(val, _values, result) - result = AssignmentNode.new(val[0],val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 339) - def _reduce_114(val, _values, result) - result = AssignmentNode.new( - val[0], - ExpressionNode.new(val[0],"+",val[3]) - ) - - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 344) - def _reduce_115(val, _values, result) - result = AssignmentNode.new( - val[0], - ExpressionNode.new(val[0],"-",val[3]) - ) - - result - end -.,., - -# reduce 116 omitted - -# reduce 117 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 357) - def _reduce_118(val, _values, result) - result = VarNode.new(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 358) - def _reduce_119(val, _values, result) - result = VarMethodNode.new(val[0],val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 363) - def _reduce_120(val, _values, result) - result = NamespacedVarNode.new(val[0],val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 367) - def _reduce_121(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 369) - def _reduce_122(val, _values, result) - result = val[0].merge(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 373) - def _reduce_123(val, _values, result) - result = { method: val[2] } - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 375) - def _reduce_124(val, _values, result) - result = { group: val[4] } - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 379) - def _reduce_125(val, _values, result) - result = [val[0]] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 380) - def _reduce_126(val, _values, result) - result = val[0] << val[1] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 384) - def _reduce_127(val, _values, result) - result = val[0] - result - end -.,., - -# reduce 128 omitted - -# reduce 129 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 394) - def _reduce_130(val, _values, result) - result = val[0] - result - end -.,., - -# reduce 131 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 396) - def _reduce_132(val, _values, result) - result = ExpressionNode.new(val[1], "!", nil) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 401) - def _reduce_133(val, _values, result) - result = ExpressionNode.new(val[0], val[1], val[2]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 405) - def _reduce_134(val, _values, result) - result = "==" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 406) - def _reduce_135(val, _values, result) - result = "<>" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 407) - def _reduce_136(val, _values, result) - result = "<" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 408) - def _reduce_137(val, _values, result) - result = ">" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 409) - def _reduce_138(val, _values, result) - result = ">=" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 410) - def _reduce_139(val, _values, result) - result = "<=" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 411) - def _reduce_140(val, _values, result) - result = "+" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 412) - def _reduce_141(val, _values, result) - result = "-" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 413) - def _reduce_142(val, _values, result) - result = "||" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 414) - def _reduce_143(val, _values, result) - result = "*" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 415) - def _reduce_144(val, _values, result) - result = "/" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 416) - def _reduce_145(val, _values, result) - result = "DIV" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 417) - def _reduce_146(val, _values, result) - result = "%" - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 418) - def _reduce_147(val, _values, result) - result = "&&" - result - end -.,., - -# reduce 148 omitted - -# reduce 149 omitted - -# reduce 150 omitted - -# reduce 151 omitted - -# reduce 152 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 430) - def _reduce_153(val, _values, result) - result = ParenExpressionNode.new(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 435) - def _reduce_154(val, _values, result) - result = IndirectNode.new(val[2].to_sym, val[4]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 440) - def _reduce_155(val, _values, result) - val[1] = val[1].to_i * -1 if val[0] == "-" - result = DigitNode.new(val[1]) - - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 443) - def _reduce_156(val, _values, result) - val[1] = val[1].to_f * -1 if val[0] == "-"; result = RealNode.new(val[1]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 447) - def _reduce_157(val, _values, result) - result = "-" - result - end -.,., - -# reduce 158 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 452) - def _reduce_159(val, _values, result) - result = RealNode.new(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 456) - def _reduce_160(val, _values, result) - result = DigitNode.new(val[0]) - result - end -.,., - -# reduce 161 omitted - -# reduce 162 omitted - -# reduce 163 omitted - -# reduce 164 omitted - -# reduce 165 omitted - -# reduce 166 omitted - -# reduce 167 omitted - -# reduce 168 omitted - -# reduce 169 omitted - -# reduce 170 omitted - -# reduce 171 omitted - -# reduce 172 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 476) - def _reduce_173(val, _values, result) - result = StringRegisterNode.new(val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 480) - def _reduce_174(val, _values, result) - result = UserAlarmNode.new(val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 484) - def _reduce_175(val, _values, result) - result = TimerNode.new(val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 488) - def _reduce_176(val, _values, result) - result = ArgumentNode.new(val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 492) - def _reduce_177(val, _values, result) - result = VisionRegisterNode.new(val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 496) - def _reduce_178(val, _values, result) - result = PositionNode.new(val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 500) - def _reduce_179(val, _values, result) - result = NumregNode.new(val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 504) - def _reduce_180(val, _values, result) - result = PosregNode.new(val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 508) - def _reduce_181(val, _values, result) - result = IONode.new(val[0], val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 512) - def _reduce_182(val, _values, result) - result = IONode.new(val[0], val[2].to_i) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 516) - def _reduce_183(val, _values, result) - result = AddressNode.new(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 520) - def _reduce_184(val, _values, result) - result = CommentNode.new(val[0]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 524) - def _reduce_185(val, _values, result) - result = TerminatorNode.new - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 525) - def _reduce_186(val, _values, result) - result = val[0] - result - end -.,., - -# reduce 187 omitted - -# reduce 188 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 532) - def _reduce_189(val, _values, result) - result = TerminatorNode.new - result - end -.,., - -# reduce 190 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 538) - def _reduce_191(val, _values, result) - result = PositionDataNode.new(val[2]) - result - end -.,., - -# reduce 192 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 546) - def _reduce_193(val, _values, result) - result = val[2] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 547) - def _reduce_194(val, _values, result) - result = {} - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 551) - def _reduce_195(val, _values, result) - result = val[0] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 553) - def _reduce_196(val, _values, result) - result = val[0].merge(val[3]) - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 557) - def _reduce_197(val, _values, result) - result = { val[0].to_sym => val[2] } - result - end -.,., - -# reduce 198 omitted - -# reduce 199 omitted - -# reduce 200 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 564) - def _reduce_201(val, _values, result) - val[1] = val[1].to_i * -1 if val[0] == "-"; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 565) - def _reduce_202(val, _values, result) - val[1] = val[1].to_f * -1 if val[0] == "-"; result = val[1] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 566) - def _reduce_203(val, _values, result) - result = val[0] == "true" - result - end -.,., - -# reduce 204 omitted - -# reduce 205 omitted - -module_eval(<<'.,.,', 'tp_plus.y', 575) - def _reduce_206(val, _values, result) - result = val[2] - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 579) - def _reduce_207(val, _values, result) - result = val - result - end -.,., - -module_eval(<<'.,.,', 'tp_plus.y', 580) - def _reduce_208(val, _values, result) - result = val[0] << val[3] - result - end -.,., - -# reduce 209 omitted - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module TPPlus diff --git a/test/racc/regress/twowaysql b/test/racc/regress/twowaysql deleted file mode 100644 index 219f1a8b04..0000000000 --- a/test/racc/regress/twowaysql +++ /dev/null @@ -1,556 +0,0 @@ -# -# DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.5.0 -# from Racc grammar file "". -# - -require 'racc/parser.rb' -module TwoWaySQL - class Parser < Racc::Parser - -module_eval(<<'...end twowaysql.y/module_eval...', 'twowaysql.y', 148) - -require 'strscan' - -def initialize(opts={}) - opts = { - :debug => false, - :preserve_space => true, - :preserve_comment => false - }.merge(opts) - @yydebug = opts[:debug] - @preserve_space = opts[:preserve_space] - @preserve_comment = opts[:preserve_comment] - @num_questions = 0 -end - - -PAREN_EXAMPLE = '\([^\)]+\)' -BEGIN_BIND_VARIABLE = '(\/|\#)\*([^\*]+)\*\1' -BIND_VARIABLE_PATTERN = /\A#{BEGIN_BIND_VARIABLE}\s*/ -PAREN_BIND_VARIABLE_PATTERN = /\A#{BEGIN_BIND_VARIABLE}\s*#{PAREN_EXAMPLE}/ -EMBED_VARIABLE_PATTERN = /\A(\/|\#)\*\$([^\*]+)\*\1\s*/ - -CONDITIONAL_PATTERN = /\A(\/|\#)\*(IF)\s+([^\*]+)\s*\*\1/ -BEGIN_END_PATTERN = /\A(\/|\#)\*(BEGIN|END)\s*\*\1/ -STRING_LITERAL_PATTERN = /\A(\'(?:[^\']+|\'\')*\')/ ## quoted string -SPLIT_TOKEN_PATTERN = /\A(\S+?)(?=\s*(?:(?:\/|\#)\*|-{2,}|\(|\)|\,))/ ## stop on delimiters --,/*,#*,',',(,) -LITERAL_PATTERN = /\A([^;\s]+)/ -SPACES_PATTERN = /\A(\s+)/ -QUESTION_PATTERN = /\A\?/ -COMMA_PATTERN = /\A\,/ -LPAREN_PATTERN = /\A\(/ -RPAREN_PATTERN = /\A\)/ -ACTUAL_COMMENT_PATTERN = /\A(\/|\#)\*(\s{1,}(?:.*?))\*\1/m ## start with spaces -SEMICOLON_AT_INPUT_END_PATTERN = /\A\;\s*\Z/ -UNMATCHED_COMMENT_START_PATTERN = /\A(?:(?:\/|\#)\*)/ - -#TODO: remove trailing spaces for S2Dao compatibility, but this spec sometimes causes SQL bugs... -ELSE_PATTERN = /\A\-{2,}\s*ELSE\s*/ -AND_PATTERN = /\A(\ *AND)\b/i -OR_PATTERN = /\A(\ *OR)\b/i - - -def parse( io ) - @q = [] - io.each_line(nil) do |whole| - @s = StringScanner.new(whole) - end - scan_str - - # @q.push [ false, nil ] - @q.push [ false, [@s.pos, nil] ] - - ## call racc's private parse method - do_parse -end - - -## called by racc -def next_token - @q.shift -end - - -def scan_str - until @s.eos? do - case - when @s.scan(AND_PATTERN) - @q.push [ :AND, [@s.pos, @s[1]] ] - when @s.scan(OR_PATTERN) - @q.push [ :OR, [@s.pos, @s[1]] ] - when @s.scan(SPACES_PATTERN) - @q.push [ :SPACES, [@s.pos, @s[1]] ] - when @s.scan(QUESTION_PATTERN) - @q.push [ :QUESTION, [@s.pos, nil] ] - when @s.scan(COMMA_PATTERN) - @q.push [ :COMMA, [@s.pos, ','] ] - when @s.scan(LPAREN_PATTERN) - @q.push [ :LPAREN, [@s.pos, '('] ] - when @s.scan(RPAREN_PATTERN) - @q.push [ :RPAREN, [@s.pos, ')'] ] - when @s.scan(ELSE_PATTERN) - @q.push [ :ELSE, [@s.pos, nil] ] - when @s.scan(ACTUAL_COMMENT_PATTERN) - @q.push [ :ACTUAL_COMMENT, [@s.pos, @s[1], @s[2]] ] if @preserve_comment - when @s.scan(BEGIN_END_PATTERN) - @q.push [ @s[2].intern, [@s.pos, nil] ] - when @s.scan(CONDITIONAL_PATTERN) - @q.push [ @s[2].intern, [@s.pos, @s[3]] ] - when @s.scan(EMBED_VARIABLE_PATTERN) - @q.push [ :EMBED_VARIABLE, [@s.pos, @s[2]] ] - when @s.scan(PAREN_BIND_VARIABLE_PATTERN) - @q.push [ :PAREN_BIND_VARIABLE, [@s.pos, @s[2]] ] - when @s.scan(BIND_VARIABLE_PATTERN) - @q.push [ :BIND_VARIABLE, [@s.pos, @s[2]] ] - when @s.scan(STRING_LITERAL_PATTERN) - @q.push [ :STRING_LITERAL, [@s.pos, @s[1]] ] - when @s.scan(SPLIT_TOKEN_PATTERN) - @q.push [ :IDENT, [@s.pos, @s[1]] ] - when @s.scan(UNMATCHED_COMMENT_START_PATTERN) ## unmatched comment start, '/*','#*' - raise Racc::ParseError, "unmatched comment. line:[#{line_no(@s.pos)}], str:[#{@s.rest}]" - when @s.scan(LITERAL_PATTERN) ## other string token - @q.push [ :IDENT, [@s.pos, @s[1]] ] - when @s.scan(SEMICOLON_AT_INPUT_END_PATTERN) - #drop semicolon at input end - else - raise Racc::ParseError, "syntax error at or near line:[#{line_no(@s.pos)}], str:[#{@s.rest}]" - end - end -end - - -## override racc's default on_error method -def on_error(t, v, vstack) - ## cursor in value-stack is an array of two items, - ## that have position value as 0th item. like [731, "ctx[:limit] "] - cursor = vstack.find do |tokens| - tokens.size == 2 and tokens[0].kind_of?(Fixnum) - end - pos = cursor[0] - line = line_no(pos) - rest = @s.string[pos .. -1] - raise Racc::ParseError, "syntax error at or near line:[#{line}], str:[#{rest}]" -end - - -def line_no(pos) - lines = 0 - scanned = @s.string[0..(pos)] - scanned.each_line { lines += 1 } - lines -end -...end twowaysql.y/module_eval... -##### State transition tables begin ### - -racc_action_table = [ - 8, 36, 9, 37, 12, 13, 10, 11, 14, 15, - 16, 17, 18, 19, 22, 23, 24, 8, 38, 9, - 3, 12, 13, 10, 11, 14, 15, 16, 17, 18, - 19, 22, 23, 24, 8, 25, 9, 40, 12, 13, - 10, 11, 14, 15, 16, 17, 18, 19, 22, 23, - 24, 8, 45, 9, 46, 12, 13, 10, 11, 14, - 15, 16, 17, 18, 19, 22, 23, 24, 8, nil, - 9, nil, 12, 13, 10, 11, 14, 15, 16, 17, - 18, 19, 22, 23, 24, 35, 33, 34, 31, 32, - 44, 43, 31, 32 ] - -racc_action_check = [ - 2, 24, 2, 24, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 26, 26, 26, - 1, 26, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 26, 26, 26, 27, 3, 27, 28, 27, 27, - 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, - 27, 41, 37, 41, 39, 41, 41, 41, 41, 41, - 41, 41, 41, 41, 41, 41, 41, 41, 42, nil, - 42, nil, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 42, 42, 42, 42, 22, 22, 22, 9, 9, - 34, 34, 40, 40 ] - -racc_action_pointer = [ - nil, 20, -2, 35, nil, nil, nil, nil, nil, 82, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 77, nil, -7, nil, 15, 32, 32, nil, - nil, nil, nil, nil, 82, nil, nil, 44, nil, 51, - 86, 49, 66, nil, nil, nil, nil, nil ] - -racc_action_default = [ - -2, -35, -1, -35, -3, -4, -5, -6, -2, -2, - -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, - -26, -27, -35, -32, -35, 48, -35, -13, -10, -11, - -12, -2, -2, -28, -35, -30, -33, -35, -7, -35, - -2, -14, -15, -29, -31, -34, -8, -9 ] - -racc_goto_table = [ - 2, 1, 28, 39, nil, nil, nil, nil, 26, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 41, 42, 47 ] - -racc_goto_check = [ - 2, 1, 7, 8, nil, nil, nil, nil, 2, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 2, 2, 7 ] - -racc_goto_pointer = [ - nil, 1, 0, nil, nil, nil, nil, -7, -25, nil, - nil, nil, nil ] - -racc_goto_default = [ - nil, nil, 27, 4, 5, 6, 7, nil, nil, 29, - 30, 20, 21 ] - -racc_reduce_table = [ - 0, 0, :racc_error, - 1, 20, :_reduce_1, - 0, 21, :_reduce_2, - 2, 21, :_reduce_3, - 1, 22, :_reduce_none, - 1, 22, :_reduce_none, - 1, 22, :_reduce_none, - 3, 25, :_reduce_7, - 4, 24, :_reduce_8, - 2, 27, :_reduce_9, - 0, 27, :_reduce_10, - 1, 26, :_reduce_none, - 1, 26, :_reduce_none, - 1, 26, :_reduce_none, - 2, 28, :_reduce_14, - 2, 29, :_reduce_15, - 1, 23, :_reduce_16, - 1, 23, :_reduce_17, - 1, 23, :_reduce_18, - 1, 23, :_reduce_19, - 1, 23, :_reduce_20, - 1, 23, :_reduce_21, - 1, 23, :_reduce_22, - 1, 23, :_reduce_23, - 1, 23, :_reduce_24, - 1, 23, :_reduce_25, - 1, 23, :_reduce_none, - 1, 23, :_reduce_none, - 2, 30, :_reduce_28, - 3, 30, :_reduce_29, - 2, 30, :_reduce_30, - 3, 30, :_reduce_31, - 1, 30, :_reduce_32, - 2, 31, :_reduce_33, - 3, 31, :_reduce_34 ] - -racc_reduce_n = 35 - -racc_shift_n = 48 - -racc_token_table = { - false => 0, - :error => 1, - :BEGIN => 2, - :END => 3, - :IF => 4, - :ELSE => 5, - :AND => 6, - :OR => 7, - :IDENT => 8, - :STRING_LITERAL => 9, - :SPACES => 10, - :COMMA => 11, - :LPAREN => 12, - :RPAREN => 13, - :QUESTION => 14, - :ACTUAL_COMMENT => 15, - :BIND_VARIABLE => 16, - :PAREN_BIND_VARIABLE => 17, - :EMBED_VARIABLE => 18 } - -racc_nt_base = 19 - -racc_use_result_var = true - -Racc_arg = [ - racc_action_table, - racc_action_check, - racc_action_default, - racc_action_pointer, - racc_goto_table, - racc_goto_check, - racc_goto_default, - racc_goto_pointer, - racc_nt_base, - racc_reduce_table, - racc_token_table, - racc_shift_n, - racc_reduce_n, - racc_use_result_var ] - -Racc_token_to_s_table = [ - "$end", - "error", - "BEGIN", - "END", - "IF", - "ELSE", - "AND", - "OR", - "IDENT", - "STRING_LITERAL", - "SPACES", - "COMMA", - "LPAREN", - "RPAREN", - "QUESTION", - "ACTUAL_COMMENT", - "BIND_VARIABLE", - "PAREN_BIND_VARIABLE", - "EMBED_VARIABLE", - "$start", - "sql", - "stmt_list", - "stmt", - "primary", - "if_stmt", - "begin_stmt", - "sub_stmt", - "else_stmt", - "and_stmt", - "or_stmt", - "bind_var", - "embed_var" ] - -Racc_debug_parser = false - -##### State transition tables end ##### - -# reduce 0 omitted - -module_eval(<<'.,.,', 'twowaysql.y', 20) - def _reduce_1(val, _values, result) - result = RootNode.new( val[0] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 25) - def _reduce_2(val, _values, result) - result = [] - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 29) - def _reduce_3(val, _values, result) - result.push val[1] - - result - end -.,., - -# reduce 4 omitted - -# reduce 5 omitted - -# reduce 6 omitted - -module_eval(<<'.,.,', 'twowaysql.y', 38) - def _reduce_7(val, _values, result) - result = BeginNode.new( val[1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 43) - def _reduce_8(val, _values, result) - result = IfNode.new( val[0][1], val[1], val[2] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 48) - def _reduce_9(val, _values, result) - result = val[1] - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 52) - def _reduce_10(val, _values, result) - result = nil - - result - end -.,., - -# reduce 11 omitted - -# reduce 12 omitted - -# reduce 13 omitted - -module_eval(<<'.,.,', 'twowaysql.y', 61) - def _reduce_14(val, _values, result) - result = SubStatementNode.new( val[0][1], val[1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 66) - def _reduce_15(val, _values, result) - result = SubStatementNode.new( val[0][1], val[1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 71) - def _reduce_16(val, _values, result) - result = LiteralNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 75) - def _reduce_17(val, _values, result) - result = LiteralNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 79) - def _reduce_18(val, _values, result) - result = LiteralNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 83) - def _reduce_19(val, _values, result) - result = LiteralNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 87) - def _reduce_20(val, _values, result) - result = WhiteSpaceNode.new( val[0][1], @preserve_space ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 91) - def _reduce_21(val, _values, result) - result = LiteralNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 95) - def _reduce_22(val, _values, result) - result = LiteralNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 99) - def _reduce_23(val, _values, result) - result = LiteralNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 103) - def _reduce_24(val, _values, result) - @num_questions += 1 - result = QuestionNode.new( @num_questions ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 108) - def _reduce_25(val, _values, result) - result = ActualCommentNode.new( val[0][1] , val[0][2] ) - - result - end -.,., - -# reduce 26 omitted - -# reduce 27 omitted - -module_eval(<<'.,.,', 'twowaysql.y', 115) - def _reduce_28(val, _values, result) - result = BindVariableNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 119) - def _reduce_29(val, _values, result) - result = BindVariableNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 123) - def _reduce_30(val, _values, result) - result = BindVariableNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 127) - def _reduce_31(val, _values, result) - result = BindVariableNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 131) - def _reduce_32(val, _values, result) - result = ParenBindVariableNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 136) - def _reduce_33(val, _values, result) - result = EmbedVariableNode.new( val[0][1] ) - - result - end -.,., - -module_eval(<<'.,.,', 'twowaysql.y', 140) - def _reduce_34(val, _values, result) - result = EmbedVariableNode.new( val[0][1] ) - - result - end -.,., - -def _reduce_none(val, _values, result) - val[0] -end - - end # class Parser -end # module TwoWaySQL |